- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
DownloadFileAsync 和 DownloadFileTaskAsync 有什么区别?
什么时候应该使用一个而不是另一个?任何例子将不胜感激。
最佳答案
一般模式 - 如果您发现两个名称以 xxxAsync
结尾的方法和 xxxTaskAsync
, 那么你通常应该更喜欢 Task
版本。
这两个版本将存在,因为 xxxAsync
版本创建于 Task-based Async Pattern 之前(TAP) 被引入,并将基于旧的异步模式。
在引入 TAP 方法时,通常的建议是在名称后缀 Async
- 但是当已经有另一个具有相同名称的方法1 时无法完成 - 因此建议使用 TaskAsync
作为后缀.
在这个具体案例中 DownloadFileAsync
是 "Event-based Async Pattern" 的一个实现(EAP),使用起来往往更尴尬。该模式本身取代了 .NET Framework 中基于匹配 Begin
的原始异步模式。和 End
前缀方法和 IAsyncResult
, Async Programming Model
1一般来说,当然可以引入多个同名的方法,只要它们有不同的签名即可。但是当谈到异步模式时,EAP 异步方法和 TAP 异步方法通常采用相同的参数——它们只是返回类型不同。即使他们的论点确实有所不同,将这两种模式置于完全相同的名称下也可能会造成更多困惑。
关于c# - DownloadFileAsync 与 DownloadFileTaskAsync,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41722757/
给定一个包含 Urls 的输入文本文件,我想一次下载所有相应的文件。我用这个问题的答案 UserState using WebClient and TaskAsync download from As
在异步出现之前,人们想知道如何在 WebClient 上设置超时,答案很简单,就是扩展基类并覆盖 GetWebRequest()并在那里设置超时。 protected override WebRequ
DownloadFileAsync 和 DownloadFileTaskAsync 有什么区别? 什么时候应该使用一个而不是另一个?任何例子将不胜感激。 最佳答案 一般模式 - 如果您发现两个名称以
我如何知道对 WebClient.DownloadFileTaskAsync 的调用是否已取消? 我的方法调用是这样的: WebClient webclient = new WebClient();
我正在尝试使用 WebClient.DownloadFileTaskAsync 从 FTP 服务器下载多个文件,但反复出现多个文件最终变为 0KB 的问题。 我尝试了不同的建议解决方案,但我就是无法获
当网络连接丢失 3 分钟或更长时间时,下面的 WPF 代码将永远挂起。恢复连接后,它既不会抛出也不会继续下载,也不会超时。如果网络连接丢失的时间较短,比如半分钟,它会在连接恢复后抛出。我怎样才能让它更
我是一名优秀的程序员,十分优秀!