C#httpwebrequests代理错误带有多线程



我正在使用螺纹池进行多线程阅读,每当我尝试启动请求时,我都会得到

Object reference not set to an instance of an object.

on

Application.Run(new Form1());

没有代理人

没有相同的问题

这是导致麻烦的代码

if (ProxyBox.Text != string.Empty)
{
     lock (locker)
     {
         Random rnd = new Random();
         int rndd = rnd.Next(0, int.Parse(ProxyNumber.Text));
         request.Proxy = new WebProxy(proxysplit[rndd].ToString());
     }
}

基本上,我想每次都从代理阵列中获取一个随机代理

有任何想法:?

在我们可以帮助您之前,您需要回答多个问题:

  1. 错误在?
  2. 上发生了哪一行
  3. 指定的代理是初始化的(即null)吗?
  4. 此外,proxysplit是初始化的吗?

检查什么不是初始化的,您也可能需要在proxysplit中的0和元素数之间生成随机数:

if (ProxyBox.Text != string.Empty)
{
    lock (locker)
    {
        Random rnd = new Random();
        int rndd = rnd.Next(0, proxysplit.Length);
        request.Proxy = new WebProxy(proxysplit[rndd].ToString());
    }
}

如果您使用ProxyNumber,并且所得整数不在proxysplit数组长度的范围内,则在尝试访问范围超出范围的元素时,您也可能会得到异常,即ArgumentOutOfRangeException

相关内容

  • 没有找到相关文章

最新更新