In this article I want to give a simple example for how to use the async await keywords in C# to create asynchronous background tasks.
Writing multi-threaded or asynchronous code has traditionally always been very hard to get right but is something that is needed to help keep our applications responsive and to avoid performance bottlenecks. C# 5 introduced a simplified model for doing asynchronous programming with the introduction of 2 new keywords, async and await.
If you specify that a method is an asynchronous method by using an async modifier, you enable the following two capabilities.
The marked async method can use the await keyword to designate suspension points. The await operator tells the compiler that the async method can’t continue past that point until the awaited asynchronous process is complete. In the meantime, control returns to the caller of the async method. The suspension of an async method…
View original post 652 more words