我制作了一个使用WebClient类的应用程序。但是突然它在第一次DownloadStringAsync
方法调用时开始冻结我的GUI,所有其他DownloadStringAsync
调用都没问题。我已经阅读了有关WebClient冻结的所有主题,但唯一的建议是将webClient->Proxy
设置为nullptr
。我在大约一个月前做了它,它帮助了!但是,今天它甚至在Form的构造函数中出现webClient->Proxy = nullptr
行。以下是Performance Wizard
的报告:
如您所见,System.Net.WebClient.DownloadStringAsync(class System.Uri,object)
占用时间最长(约5-7秒)。以下是调用execute
方法的DownloadStringAsync
函数:
void execute(String^ method, String^ params, int userData)
{
web1->DownloadStringAsync(gcnew Uri("http://<ADDRESS>" + method + "?" + params + "&access_token=" + token + "&sig=" + Md5("/method/" + method + "?" + params + "&access_token=" + token + secret)), userData);
}
也许有人知道为什么会这样。