多线程下 HttpWebRequest 控制
有10个线程进行100个httpWebRequest任务
还有一个ADSL重连计数变量httpWebRequest任务完成一个计数变量+1
计数变量到20后重新连接ADSL然后归0.(这个搞不懂的不用管)
现在问题是10线程并发,如线程5执行的时候计数器到20了然后进行ADSL断开再连接同时其余9个线程大部分执行httpWebRequest的地方会出错。这个问题如何解决。
重连ADSL的时候其余9个线程暂停?还是什么方法?请指点一下。 本人自学C#概念和意识也不会很好。
[解决办法]
ADSL断开再连接,如果IP换了,那么导致“其余9个线程大部分执行httpWebRequest的地方会出错”是因为IP换了。暂停有什么用,只能让它们重新连接了。
[解决办法]
其实很容易,自己写HttpWebRequest就行了,无非就是socket write bytes
[解决办法]
{
Thread.Sleep(1000);
}
try
{
Adsl.Disconnect();
Thread.Sleep(1000);
Adsl.Connection(configdic["tbx_AdslName"], configdic["tbx_AdslId"], configdic["tbx_AdslPassWord"]);
Thread.Sleep(1000);
}
catch (Exception ex)
{
MessageBox.Show("重拨出错:" + ex.ToString());
}
replayNumber = 1;
}
replayNumber++;
}
}
[解决办法]