首先登录网站,然后多线程发送很多请求,这时有可能会丢失cookie信息(原因先不管),丢失以后需要重新登录,由于是多线程,那么就有可能登录N次。
我想要的效果:当一个线程丢失cookie以后,去登录,其他线程等待这个线程登录以后再发送请求.
怎么解决呢?lock?
本人是新手,麻烦说详细点,最好贴上代码!感激不尽!
Public string ReLogin()//重新登录
{
  ...
}
Public string Request(string url){//发送请求统一入口
   string html=GetHtml(url);
   if(html.Contains("登录信息获取出错")){
    ReLogin();
    html=Request(url)
 }
   return html
}
public void A(){//线程一
  while(true)
  { 
    Request(url)
  }
}
public void B(){//线程二
  while(true)
  { 
    Request(url)
  }
}