

Ask HN: In which class do you learn about threading - 3minus1

I minored in CS but never learned about this topic. It seems important and I want to educate myself. Can someone tell me which class or classes cover this material?
======
evv
Here is MIT's free online course on the subject:

[http://ocw.mit.edu/courses/electrical-engineering-and-
comput...](http://ocw.mit.edu/courses/electrical-engineering-and-computer-
science/6-827-multithreaded-parallelism-languages-and-compilers-
fall-2002/syllabus/)

------
arghnoname
It depends on the university. As some others have mentioned it will probably
come up with some depth in operating systems. It is kind of hard to avoid in
OS. I don't think it's uncommon to have a course with a bit of a focus on this
kind of stuff either. You might also hit it in a networking course, though it
can be avoided there.

Learning the basics on your own isn't too difficult though. Writing a single
threaded web service, a forking web service, and a multi-threaded web service
is a little project you can do. Ideally the processes would need to share
memory or communicate with one another some way.

------
br0ke
The university I went to covered threading in the operating systems class (4th
year undergrad), iirc. Working through an online tutorial for java concurrency
might be beneficial?

------
codegeek
It really varies i think. When I took CS as a major, we came across threading
in multiple classes but prominently in Operating Systems and Software
Engineering. Some earlier data structure classes had assignments (Java/C++)
where we had to write games using threading. I even remember that in one of
the earlier game assignments, threading was a bonus point if used.

------
robertjflong
Covered in a few different classes, but in detail as part of the two
Concurrent Systems modules: [https://scss.tcd.ie/undergraduate/computer-
science/js/#CS301...](https://scss.tcd.ie/undergraduate/computer-
science/js/#CS3014)

------
true_religion
We learned about it in CS201 in the University of Virginia. That's 2nd
semester CS.

But it varies. I think now adays, the students don't learn about it till 300
level---the Principles of Software Development class.

------
AdamGorman
Although not officially, we have used some simple threading techniques in my
Android class. Which is an elective course for Computer Science at FSU.

------
chudi
In my university in Operating Systems class we learnd about threading

