With the introduction of Async/Await .NET developers never had asynchronous code this easy before. Finally, every programmer could create a multi-threaded app.
It’s nearly four years since that official launch of .NET 4.5 and there is still a significant level of misunderstanding on what Async/Await actually provides and when to use it.
I think it’s time to rewind and get back to basics and ask some fundamental questions.
- Is your application CPU intensive, or I/O intensive?
- How many CPU threads will your application actually be running on?
- Are your business requirements suitable for asynchronous processing anyway?
We’ll check out the great advantages of Async/Await, highlight some gotchas and take a look at the other ways of creating multi-threaded applications so you can select the right approach for the problems you have.