C# 处理线程中的线程中止异常。。。。?

C# 处理线程中的线程中止异常。。。。?,c#,asp.net,multithreading,thread-safety,C#,Asp.net,Multithreading,Thread Safety,子线程正在等待Web服务器的响应,并且也有一个超时值 若超时值在从web服务器获得响应之前出现,它将继续请求超时和线程中止异常 我们如何处理此问题并登录到文本文件 父线程 用于跨线程通信的对象 谢谢。据我所知,您在问如果您的子线程超时,如何登录到文件 如果是这样,我相信GetResponse()方法在收到响应之前达到超时限制时会抛出WebException。因此,围绕使用try-catch语句进行GetResponse()调用的行应该允许您将信息记录到文件中 例如: try { WebR

子线程正在等待Web服务器的响应,并且也有一个超时值
若超时值在从web服务器获得响应之前出现,它将继续请求超时和线程中止异常
我们如何处理此问题并登录到文本文件
父线程

用于跨线程通信的对象



谢谢。

据我所知,您在问如果您的子线程超时,如何登录到文件

如果是这样,我相信
GetResponse()
方法在收到响应之前达到超时限制时会抛出
WebException
。因此,围绕使用try-catch语句进行
GetResponse()
调用的行应该允许您将信息记录到文件中

例如:

try {
    WebResponse lWebResponse = lWebRequest.GetResponse;
} catch (WebException ex) {
    // Write to file code in here
}
由于
GetResponse()
是抽象的,
WebException
实际上是由
GetResponse()
的或实现引发的

private void CallBackFunc(object obj)
{
     UrlData msgObj = (UrlData)obj;
   WebRequest lWebRequest = WebRequest.Create(psUrl);
   lWebRequest.Timeout = 60000;
   WebResponse lWebResponse = lWebRequest.GetResponse;

    msgObj.FinishEvent.Set();
}
public class UrlData
{
public Job job;
public ManualResetEvent FinishEvent;
public HttpContext HttpContextRef;

public UrlData(Job pJob, ManualResetEvent pEvent, HttpContext pContext)
  {
      job= pJob;
      FinishEvent = pEvent;
      HttpContextRef = pContext;
  }
}
try {
    WebResponse lWebResponse = lWebRequest.GetResponse;
} catch (WebException ex) {
    // Write to file code in here
}