Quote from n00b7r4d3r:
It is difficult to learn how to program well on your own. You can find the basics anywhere but finding how to write GOOD code is hard. Any documentation that I can find on debugging memory leaks is lacking and documentation on how to multithread properly is virtually non-existant. (apparantly even the experts dont know what to do http://www.youtube.com/watch?v=mrvAqvtWYb4 )
I think there is a lack of documentation on the web, because threads are not 'sexy', and quite boring. Everyone studied threads, locks and mutexes in their OS class, and don't really have a need to rehash them on the web.
Threads have been around for soooo long, and there still is not a standard way to implement them in C++. The next version of C++ will have native thread support, and I think you will start seeing much more about threads on the web.
And when you throw in how Microsoft decided to do reader/writer locks, who would not be confused.