当进行专案开发的时候,为了要能够有助于提高应用程序的性能、速度和响应能力,这个时候便可以使用异步程式设计做法来进行改善原先系统的效能和响应能力问题。在 .NET / C# 内,提供了 APM EAP TAP 设计模式让开发人员方便进行异步程式设计,不过,想要进行异步程式设计毕竟不是很简单的工作。
有鉴于此,微软在 C# 5.0 推出了 async 与 await 功能,让 .NET 开发者可以轻松、容易的使用同步程式设计观念,设计出具有异步执行能力的程式设计开发方式,而且,在此之后,微软所提供的 BCL 类别库内,也绝大多数都已经提供了这些异步运作的 API。
然而,许多开发者在面对 async 与 await 开发做法的时候,面临到许多问题:例如:打死结、射后不理、对于 async 和 await 运作方式理解错误。这次我们将会洞悉 async 和 await 的内部运作方式,并且提供开发设计指引来遵循写出好的异步程式代码,充分发挥使用异步程式设计所带来的好处。
喜爱 .NET 与 C# 和 XAML 语言,热于探索各种技术背后的原理,平常喜欢撰写各种技术文章与写书,本身最近十年专注于 UWP、Xamarin.Forms开发框架,对于C# 多执行绪、异步程式设计、相依性注入等主题特别有研究,最近更加迷恋上 Blazor 开发框架,并且协助导入与解决相关问题。