c# – WebClient.DownloadFileAsync真的这么慢吗?

c# – WebClient.DownloadFileAsync真的这么慢吗?,第1张

概述我正在使用WebClient的DownloadFileAsync方法从服务器下载一些文件,我不禁注意到在VS2010中对我的代码进行非正式测试时,它在启动时会阻塞大约3秒钟,在我的意见首先打败了目的. 以下是相关的代码片段: WebClient downloader = new WebClient();downloader.DownloadProgressChanged += new Downl 我正在使用WebClIEnt的DownloadfileAsync方法从服务器下载一些文件,我不禁注意到在VS2010中对我的代码进行非正式测试时,它在启动时会阻塞大约3秒钟,在我的意见首先打败了目的.

以下是相关的代码片段:

WebClIEnt downloader = new WebClIEnt();downloader.DownloadProgressChanged += new DownloadProgressChangedEventHandler(updateDownloadProgress);downloader.DownloadfileCompleted += new System.ComponentModel.AsyncCompletedEventHandler(downloadCompleted);var current_map = map_downloads[0];//string with filename,map_downloads is List<string>var path = System.IO.Path.GetTempfilename();downloaded_maps.Add(path);//adding the temp file to a List<string>downloader.DownloadfileAsync(new Uri(MAP_BASE + current_map),path); //MAP_BASE is a string containing the base url

我正在使用DownloadfileAsync来阻止UI在应用程序下载~100 MB文件时阻止.显然,如果UI在呼叫开始时阻塞了3秒,那么即使不完全,也会在一定程度上减少效用.

我对C#/ .Net相对缺乏经验(我在大约3 – 4年前做过一堆.Net 2.0的东西,IIRC,但我现在基本上重新学习它).

解决方法 除了Nav所说的,看起来问题是Web代理自动检测,请参阅以下答案: Why is this WebRequest code slow?

我测试了它,它现在在第一次通话期间没有任何明显的延迟.

总结

以上是内存溢出为你收集整理的c# – WebClient.DownloadFileAsync真的这么慢吗?全部内容,希望文章能够帮你解决c# – WebClient.DownloadFileAsync真的这么慢吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1246859.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存