我有以下代碼片段。爲什麼在threadPool線程上引發異常不是由C#中的主線程處理的
class Program
{
static void Main(string[] args)
{
try
{
Thread m_thread = new Thread(() =>
{
//try
//{
checkexc();
//}
//catch (Exception ex)
//{
//}
}
);
m_thread.Start();
}
catch (Exception ex)
{
}
}
static void checkexc()
{
throw new NullReferenceException();
}
}
NullReferenceException不被覆蓋的Try-Catch塊處理。但是,如果我包裝線程()構造函數內的委託,那麼它由Try-Catch處理。爲什麼沒有外Try-Catch處理這個異常。
因爲它是不同的線程 – ColWhi 2011-04-19 09:51:40