Pro Asynchronous Programming with .NET

  • 5h 34m
  • Andrew Clymer, Richard Blewett
  • Apress
  • 2013

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

About the Authors

Richard Blewett is a professional software developer and trainer living in Bristol in the UK. He has been writing software for over 20 years and has spent most of that time building distributed systems of one form or another. He first started writing multithreaded code in C on OS/2 and continued when moving to Windows, COM and .NET. Over the years he has built software for banks, insurance companies, travel companies, emergency services, health companies, and more. He is a co-founder of Rock Solid Knowledge and as well as writing software and consulting he regularly delivers training courses for DevelopMentor. He can often be found speaking at conferences including Tech Ed, DevWeek, Software Architect and BASTA. He has been recognized by Microsoft as an MVP for C# and Connected Systems.

Andrew Clymer is a professional software developer and educator living in Chippenham, Wiltshire (UK). Andy cut his teeth working in various start-ups and programming on a host of platforms, finally working for a small start-up that was acquired by Cisco in 1997. Having worked for Cisco for a few years, the lure of the start-up world was too much to resist. He is a co-founder of Rock Solid Knowledge, a development, training and consultancy company specializing in .NET development.

In this Book

  • An Introduction to Asynchronous Programming
  • The Evolution of the .NET Asynchronous API
  • Tasks
  • Basic Thread Safety
  • Concurrent Data Structures
  • Asynchronous UI
  • async and await
  • Everything a Task
  • Server-Side Async
  • TPL Dataflow
  • Parallel Programming
  • Task Scheduling
  • Debugging Async with Visual Studio
  • Debugging Async—Beyond Visual Studio
SHOW MORE
FREE ACCESS