Understanding async and await
C# 5 introduced two C# keywords when working with the Task
type. They are especially useful for the following:
- Implementing multitasking for a graphical user interface (GUI).
- Improving the scalability of web applications and web services.
In Chapter 18, Building Mobile and Desktop Apps Using .NET MAUI, we will see how the async
and await
keywords can implement multitasking for a GUI.
But for now, let’s learn the theory of why these two C# keywords were introduced, and then later you will see them used in practice.
Improving responsiveness for console apps
One of the limitations with console apps is that you can only use the await
keyword inside methods that are marked as async
, but C# 7 and earlier do not allow the Main
method to be marked as async
! Luckily, a new feature introduced in C# 7.1 was support for async
in Main
:
- Use your preferred code editor to add a new console app to the
Chapter04
solution...