0

我正在使用 System.Net.WebClient.DownloadFileAsync() 方法将文件从 Internet 下载到本地驱动器。在 Windows 环境中,没有问题,但是当我尝试使用 Mono 时,一旦下载开始就会出现“请求超时”消息并且下载操作失败(零字节文件)。

我在互联网上找到了一些文章,包括 [1] 和 [2],它们说问题与 ThreadPool 有关,设置 MONO_THREADS_PER_CPU=2000 将是解决方案。到目前为止,我已经尝试过:

  1. 在 Win CMD 提示符下,SET MONO_THREADS_PER_CPU=2000: not resolved
  2. 在 Mono 2.10.8 CMD 提示符下,SET MONO_THREADS_PER_CPU=2000 未解决
  3. 通过 Visual Studio 使用 mono-tools [3],创建了一个配置文件 MONO_THREADS_PER_CPU=2000(在环境变量设置中):未解决

相关链接:

  1. http://www.mono-project.com/Article:ThreadPool_Deadlocks
  2. http://www.mono-project.com/Mod_mono
  3. -http://mono-tools.com/Debug.aspx

操作系统:Win7 x64,单声道版本:2.10.8

System.Net.WebClient client = new System.Net.WebClient();
client.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadFileCompleted);
client.DownloadFile(url, temp);
4

0 回答 0