Chapter 2. Async Basics
This chapter introduces you to the basics of using async
and await
for asynchronous operations. This chapter only deals with naturally asynchronous operations, which are operations such as HTTP requests, database commands, and web service calls.
If you have a CPU-intensive operation that you want to treat as though it were asynchronous (e.g., so it doesn’t block the UI thread), then see Chapter 3 and Recipe 7.4. Also, this chapter only deals with operations that are started once and complete once; if you need to handle streams of events, then see Chapter 5.
To use async
on older platforms, install the NuGet package Microsoft.Bcl.Async
into your application. Some platforms support async
natively, and some should have the package installed (see Table 2-1):
async
Platform | Dataflow support |
.NET 4.5 | |
.NET 4.0 | NuGet |
Mono iOS/Droid | |
Windows Store | |
Windows Phone Apps 8.1 | |
Windows Phone SL 8.0 | |
Windows Phone 7.1 | NuGet |
Silverlight 5 | NuGet |
2.1. Pausing for a Period ...
Get Concurrency in C# Cookbook 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.