C# Threading Handbook
300 pages | Wrox Press (February 2003) | ISBN-10: 1861008295 | PDF | 3 Mb
This book addresses the fundamental units of Windows and .NET programming - threads. A strong understanding of the role threads play in program execution, how multiple threads can interact in order to make efficient programs, and the pitfalls to beware of when developing multithreaded applications, are all core to a developer's ability to develop effective C# programs. This book will cover how .NET applications are executed, the life cycle of a thread in .NET, how the .NET Framework uses threads, how threads work in an event-driven environment, how we can avoid race conditions and deadlocks, how the activity of multiple threads can be synchronized, and how to debug multithreaded applications. We finish it off by describing the creation of a multithreaded network application.
What is great about this book?
Threads are fundamental to the way GUI and server applications operate; if your code is running in a GUI, then you're already writing code in a threaded environment. An ASP.NET page also runs in a threaded environment. This book aims to cover the tricky issues of threading in .NET, and particularly to do so from the perspective of C# developers. Threading is by nature not easy to grasp, but a necessary step towards mastery of programming for the .NET platform.