Book description
Pro Asynchronous Programming with .NET teaches the essential skill of asynchronous programming in .NET. It answers critical questions in .NET application development, such as: how do I keep my program responding at all times to keep my users happy? how do I make the most of the available hardware? how can I improve performance?
In the modern world, users expect more and more from their applications and devices, and multi-core hardware has the potential to provide it. But it takes carefully crafted code to turn that potential into responsive, scalable applications.
With Pro Asynchronous Programming with .NET you will:
Meet the underlying model for asynchrony on Windows—threads.
Learn how to perform long blocking operations away from your UI thread to keep your UI responsive, then weave the results back in as seamlessly as possible.
Master the async/await model of asynchrony in .NET, which makes asynchronous programming simpler and more achievable than ever before.
Solve common problems in parallel programming with modern async techniques.
Get under the hood of your asynchronous code with debugging techniques and insights from Visual Studio and beyond.
In the past asynchronous programming was seen as an advanced skill. It's now a must for all modern developers. Pro Asynchronous Programming with .NET is your practical guide to using this important programming skill anywhere on the .NET platform.
What you'll learn
How threads make asynchrony possible in .NET
The costs and benefits of different synchronization primitives
How to make the most of the async and await keywords for easier management of asynchronous operations
How to use an asynchronous model to scale processing across multiple cores
The different demands of IO and CPU bound processing
Debugging multithreaded code effectively
Who this book is for
Pro Asynchronous Programming with .NET is for the .NET developer who wants to get more out of the platform. It's for the UI developer who finds their applications feel unresponsive. It's for the server-side developer who is struggling to scale their systems. It's for the developer who is being given more data to process and less time to do it in. Pro Asynchronous Programming with .NET is for people who want to solve problems but also understand how and why the solutions work.
Table of contents
- Title Page
- Dedication
- Contents at a Glance
- Contents
- About the Authors
- About the Technical Reviewer
- Acknowledgments
- CHAPTER 1: An Introduction to Asynchronous Programming
- CHAPTER 2: The Evolution of the .NET Asynchronous API
- CHAPTER 3: Tasks
-
CHAPTER 4: Basic Thread Safety
- Asynchrony and Data
- The Interlocked Class
- Monitor: The Workhorse of .NET Synchronization
- Optimizing for Read
- A Semaphore Out of the Box
- Raising the Starting Gate: ManualResetEventSlim
- CountdownEvent: Simplifying Fork and Join
- Barrier: Rendezvous-Based Synchronization
- Crossing the AppDomain Boundary with WaitHandle
- Synchronization Is Not the Only Answer
- Conclusion
- CHAPTER 5: Concurrent Data Structures
- CHAPTER 6: Asynchronous UI
- CHAPTER 7: async and await
- CHAPTER 8: Everything a Task
- CHAPTER 9: Server-Side Async
- CHAPTER 10: TPL Dataflow
- CHAPTER 11: Parallel Programming
- CHAPTER 12: Task Scheduling
- CHAPTER 13: Debugging Async with Visual Studio
- CHAPTER 14: Debugging Async—Beyond Visual Studio
- Index
Product information
- Title: Pro Asynchronous Programming with .NET
- Author(s):
- Release date: December 2013
- Publisher(s): Apress
- ISBN: 9781430259206
You might also like
book
Pro C# 7: With .NET and .NET Core
This essential classic title provides a comprehensive foundation in the C# programming language and the frameworks …
book
.NET Core in Action
.NET Core in Action shows .NET developers how to build professional software applications with .NET Core. …
book
Hands-On Parallel Programming with C# 8 and .NET Core 3
Enhance your enterprise application development skills by mastering parallel programming techniques in .NET and C# Key …
book
Async in C# 5.0
If you’re writing one of several applications that call for asynchronous programming, this concise hands-on guide …