如果在輔助線程中發生異常,如何在主線程中捕獲異常?如果在輔助線程中發生異常,如何在主線程中捕獲異常?
的代碼段場景下面給出:
private void button1_Click(object sender, EventArgs e)
{
try
{
Thread th1 = new Thread(new ThreadStart(Test));
th1.Start();
}
catch (Exception)
{
}
}
void Test()
{
for (int i = 0; i < 100; i++)
{
Thread.Sleep(100);
if (i == 2)
throw new MyException();
}
}
你不能。首先,在拋出異常的時候,主線程中的try ... catch已經完成。 – 2010-06-01 05:19:49