Chapter 29. Threading and Synchronization

Today’s computers have tremendous processing power. Not only does this get reflected in clock speeds (which seem to have reached a ceiling due to heat dissipation challenges), but the number of processing cores in machines is ever increasing too. This trend toward many-core machines poses an ongoing challenge as to how to write software that can take advantage of these computing resources.

Writing concurrent programs isn’t anything new, though. Operating systems, such as Windows NT, introduced scheduling mechanisms that allowed programs to run multiple threads of execution at the same time. While such parallel ...

Get C# 4.0 Unleashed now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.