是什么DownloadFileAsync和DownloadFileTaskAsync的区别?DownloadFileAsync VS DownloadFileTaskAsync
当我应该使用一个而不是另一个?任何例子将不胜感激。
1
A
回答
6
一般模式 - 如果你发现两种方法有名字结束xxxAsync
和xxxTaskAsync
,那么你通常应该喜欢Task
版本。
这两个版本将存在,因为xxxAsync
版本是在引入Task-based Async Pattern(TAP)之前创建的,并且将基于较旧的异步模式。
在介绍TAP方法,通常的建议是与Async
的后缀名 - 但是当已经有具有相同名称另一种方法,不能做 - 那么则建议与TaskAsync
的后缀。
在这种特定情况下,DownloadFileAsync
是"Event-based Async Pattern"的实现,它往往更难处理。这种模式本身所取代.NET框架中的原始异步模式,这是基于匹配Begin
和End
前缀的方法和IAsyncResult
,该Async Programming Model
一般,当然,您能介绍多个具有相同名称的方法,只要它们具有不同的签名。但是,当涉及到异步模式时,EAP异步方法和TAP异步方法通常会采用相同的参数 - 它们只会在返回类型上有所不同。即使他们的论点有所不同,将两种模式置于同一名称下也可能会导致更多混淆。
相关问题
- 1. DownloadFile vs DownloadFileAsync
- 2. WebClient DownloadFileAsync挂起
- 3. DownloadFileAsync错误
- 4. 无法使用DownloadFileAsync
- 5. DownloadFileAsync:多个文件
- 6. WebClient DownloadFileAsync()块线程
- 7. .Net DownloadFileTaskAsync功能强大的WPF代码
- 8. WebClient DownloadFileAsync()不起作用
- 9. WebClient DownloadFileAsync文件存在
- 10. DownloadFileAsync阻止我的应用程序
- 11. WebClient DownloadFileAsync路径中的非法字符
- 12. DownloadFileAsync多个文件使用WebClient的
- 13. C#DownloadFileAsync,不以绝对路径工作
- 14. PowerShell的:运行空间问题DownloadFileAsync
- 15. DownloadFileAsync下载一个0KB文件
- 16. DownloadFileTaskAsync只下载2个文件在同一时间
- 17. C#DownloadFileTaskAsync不下载嵌套压缩文件
- 18. VB.NET DownloadFileAsync触发完成事件,但不下载
- 19. DownloadFile工作,DownloadFileAsync得0字节的文件
- 20. WebClient DownloadFileAsync - 如何向用户显示下载速度?
- 21. 无法在C#中的DownloadFileAsync之后执行下一个代码?
- 22. 同时调用多个DownloadFileAsync阻止UI线程
- 23. WebClient - DownloadFileAsync第二次调用时不起作用
- 24. C#从文件中读取符合的StreamReader与DownloadFileAsync
- 25. 如果下载未进行30秒,则中止DownloadFileAsync
- 26. 如何添加DownloadFileAsync到更新程序在vb.net
- 27. VB - 使用DownloadFileASync(WebClient)进行多次下载
- 28. DownloadFileAsync循环与CompletedEvent只获取最后一个文件
- 29. AsyncTask with ProgressDialog vs orientation orientation
- 30. vs vs 2008 vs vs 2010
..对于'DownloadFileAsync',你需要添加一个事件处理程序到'DownloadFileCompleted'事件来知道它什么时候完成,而不是等待由'DownloadFileTaskAsync'返回的任务。 – stuartd