我写了这个代码片段:.NET多线程和异常
static void Main(string[] args)
{
Console.WriteLine("Start");
Thread secondThread = new Thread(ThrowAnException);
secondThread.Start();
Console.ReadKey();
}
static void ThrowAnException()
{
throw new Exception("Second Thread Exception");
}
}
我的理解是,当异常发生时,第二个线程上的异常,如果未处理,子线程下移线程的堆栈和默默终止。我所看到的是这个线程正在中断主线程,并在ThrowAnException方法中抛出了“Exception was Unhandled”异常。
我运行它与调试和没有和行为是相同的。
任何想法我做错了什么?
[.NET线程抛出异常时会发生什么?](http://stackoverflow.com/questions/1668634/what-happens-when-a-net-thread-throws-an-exception) – Euphoric
你“看到线程正在中断主线程”吗? – Timbo
'孩子的线程默默地终止了 - 你在哪里遇到过这个? – YK1