我正在开发一个多次调用网址的项目
request = (HttpWebRequest)WebRequest.Create(url);
request.GetResponse();
这是我的代码。它处于一个循环中,它可以工作2次,但在第三次迭代时它会挂起。没有崩溃或错误。请帮忙。任何帮助将不胜感激。
错误:等待20分钟后。
System.Net.WebException was unhandled
Message=The operation has timed out
Source=System
StackTrace:
at System.Net.HttpWebRequest.GetResponse()
at ConsoleApplication1.Program.Main(String[] args) in C:\WorkSpace\ConsoleApplication1\ConsoleApplication1\Program.cs:line 48
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException:
答案 0 :(得分:5)
尝试以下方法:
var response = request.GetResponse();
//do stuff with response
response.Close();
WebResponse
实例保存活动连接,您必须在建立新连接之前关闭该连接。
您也可以使用using
子句执行此操作,这完全取决于您:
using (var response = request.GetResponse())
{
//do stuff with response
}