Describes strategies to combine the Win32 synchronization primitives into more complex synchronization objects. It presents several solutions for implementing advanced synchronization objects along with a comparison of how they perform.
Focuses on several of the new thread synchronization features introduced with Windows Vista: condition variables, slim reader/writer locks, and one-time initialization.
Presents some of the concepts of multithreaded programming and shows some simple ways to introduce threaded execution with OpenMP and thread pools. Also demonstrates how to use Visual Studio 2010 to measure the improvement in performance gained from these techniques.
Discusses the limits on the maximum number of threads and processes supported on Windows. Describes the difference between a thread and a process, surveys thread limits and then investigates process limits