One of the best ways to become familiar with the many facets of multithreading is to read the current literature. This literature consists of books, technical papers, online discussions and FAQs. Here are a few significant links regarding multithreaded programming in general. Note that much of the online dicussions regarding multithreading is Unix-centric and views by authors are sometimes unreasonably hostile to non-Unix-centric multithreading paradigms.
Thread Time: The MultiThreaded Programming Guide, by Norton and DiPasquale
Programming with Posix Threads, by Butenhof
Threads Primer: A Guide to Multithreaded Programming, by Lewis and Berg
Concurrent Programming in Java(TM): Design Principles and Pattern, by Lea
http://www.opengroup.org/onlinepubs/007904975/basedefs/pthread.h.html
http://kerneltrap.org/node/422
http://developer.apple.com/macosx/multithreadedprogramming.html
http://developer.apple.com/technotes/tn/tn2028.html
news://comp.programming.threads (note that this discussion group is marred by the presence of some trolls)
http://www.talkaboutprogramming.com/group/comp.programming.threads/ (same as usenet but more accessible for some)
http://www.openmp.org/index.cgi?faq
http://www.lambdacs.com/cpt/MFAQ.html
http://www.lambdacs.com/cpt/FAQ.html
ACE: http://www.cs.wustl.edu/~schmidt/ACE-overview.html
Boost: http://www.boost.org/libs/thread/doc/index.html
ZThreads: http://zthread.sourceforge.net/html/hierarchy.html
http://www-106.ibm.com/developerworks/java/library/j-king.html