![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
翻译
文章平均质量分 86
rabbitlzx
春风拂面
展开
-
《Async in C# 5.0》第六章 基于Task的异步模式
基于Task的异步模式(TAP)是微软推荐的一系列使用Task类型编写异步API的方式。微软的并行编程小组的成员Stephen Toub写了一篇文章,其中包括了一些很棒的例子,很值得一读。需要使用await调用应用了这个模式的API,同时也需要使用async关键字来产生遵循此模式的方法。通常来说,手动使用Task类型很有用。在本章中,我将介绍这个模式,以及使用它的一些技巧。TAP约定了什么假定我们已经知道了如何设计一个好的C#同步方法的签名:// 未完待续...原创 2021-07-06 17:18:41 · 266 阅读 · 0 评论 -
《Async in C# 5.0》第五章 await到底做了什么?
有两种方式来思考C# 5.0中的async功能,特别是使用了await关键字后到底发生了什么:作为一种语言层面上的功能,你可以学学它对应的行为是什么 从编译期对方法进行转换的角度看,它更像是一种语法糖(syntaticsugar)这两点就是一枚硬币的两个方面。在本章,我们会集中在第一点上来学习async。在第14章,我们会从另一个方面去进行思考,虽然这样会更复杂些,但是却会学到更多的细节,从而帮助我们理清调试和性能方面的一些考虑。休眠以及恢复一个方法(Hibernating and Resum.原创 2021-04-30 17:27:55 · 578 阅读 · 2 评论 -
《Async in C# 5.0》第四章 编写异步方法
现在我们知道了异步代码很棒,但是编写异步代码到底有多困难呢?是时候看一下C# 5.0中的async功能了。在第一章async做了什么一节我们提到了,如果一个方法被标注为async,则需要在方法内使用await关键字。private async void DumpWebPageAsync(string uri){ WebClient webClient = new WebClient(); string page = await webClient.DownloadStringTaskA.原创 2021-04-09 08:59:25 · 317 阅读 · 0 评论 -
《Async in C# 5.0》第三章 手动编写异步代码
在本章中,我们将探讨一下如何在不使用C# 5.0以及async的情况下去编写异步代码。这样做会帮助你理解异步背后到底发生了什么。基于这个原因,我会带着你快速过一下例子,然后只把需要我们重点理解的地方告诉你。.NET中采用的一些异步模式正如我之前所说,Silverlight只提供异步版本的API。下面是一个下载网页内容并进行显示的例子private void DumpWebPage(Uri uri){ WebClient webClient = new WebClient(); webCl原创 2021-03-22 10:27:24 · 272 阅读 · 0 评论 -
《Async in C# 5.0》第二章 为什么程序需要以异步方式执行?
众所周知,异步编程既重要又有用,但是为什么它如此重要却要具体问题具体分析,因为这取决于你在编写什么样的程序。有些优点到处都被提及,但真正体现这些优点的场景可能你一辈子也碰不到,如果这和你情况相符,请确保读完这一章,因为背景知识会帮助你理解整个上下文。带用户界面的桌面程序桌面程序有一个主要的性能需求——需要对用户操作做出响应。人机交互(HCI)调研发现:程序慢一点用户可以忍,只要用户点击后界面有响应就行(比如有一个动画进度条之类的)。但是如果程序失去响应,用户就会感到抓狂。失去相应的主要原因就是程序在原创 2021-03-16 17:02:31 · 395 阅读 · 2 评论 -
《Async in C# 5.0》第一章 引言
阅读此书的约定斜体字: 表示新定义的术语、URL、邮件地址、文件名、文件扩展名。下面的图标表示:小贴士|、建议或者注释。第一章 引言首先,让我们从较高层次介绍一下C# 5.0中的async功能,看看它对你意味着什么。异步编程什么样的代码是异步的呢?如果程序开始执行耗时操作后,不会等待耗时操作结束才往下执行,这样的代码就是异步的。如果程序一直等待耗时操作结束后,才会继续往下执行,这样的代码就是阻塞代码(blocking code)。常见的耗时操作包括下列场景:...原创 2021-03-16 17:00:40 · 427 阅读 · 0 评论 -
翻译《Async in C# 5.0》
每次用到async/await,常心生疑惑,不明其理,以致误用。现尝试翻译下面这本书,希望能有所收获。由于本人水平有限,翻译过程难免有错,希望看官予以指正,不胜感谢。如果对你有帮助,也别忘了点个赞再走,谢谢;-)作者:Davies, Alex出版年:2012-9页数:105...原创 2021-03-16 16:47:33 · 300 阅读 · 0 评论