Lesson Index
Figure 1
Lesson 1: Using the Parallel Patterns LibraryThe Microsoft C++ Concurrency Runtime (ConcRT) includes the Parallels Patterns Library (PPL) to assist you in writing fine-grained parallel programs. This lesson will help you become acquainted several aspects of the PPL. In case you are not familiar with new C++0x language features, this lesson will also guide you through some of the basics. Lesson 2: Protecting Shared Data using critical_sectionWhen working with code that shares data, the programmer must be very careful to avoid concurrency pitfalls such as data races. Lesson 2 will show you how to synchronize data access using one of the synchronization primitives in the PPL. Lesson 3: Protecting Shared Data using the reader_writer_lockCritical Sections may be a great way to synchronize access to shared data that is prone to concurrent access. In case you have a scenario where many threads read the shared data but not too many threads write to shared data, then maybe it’s a good idea to use the reader_writer_lock instead. Lesson 4: Working with the Concurrency Runtime EventsConcurrency Runtime events take advantage of UMS (User Mode Scheduling) and are cooperative when it comes yielding for other scheduled tasks. This lesson will show you how to work with Concurrency Runtime events and task groups and how they differ from the regular Win32 events. Lesson 5: Working with AgentsIf your program has an intricate flow and may be parallelized using components that must communicate with one another, then agents might be your best choice. This lesson will teach you how to work with the asynchronous agents library, a data flow message passing library. |
DownloadsDownload The Offline Training Kit Contents
|