スレッドデモにWindowsフォームアプリケーションを使用しています。button1をクリックすると、スレッドが開始され、再帰的に作業が行われます。
ここでは、フォームが期待どおりにハングしません。Button2をクリックしたときに、現在実行中のスレッドを停止したい。ただし、これは機能しません。
private void button1_Click(object sender, EventArgs e)
{
t = new Thread(doWork); // Kick off a new thread
t.Start();
}
private void button2_Click(object sender, EventArgs e)
{
t.Abort();
}
static void doWork()
{
while (true)
{
//My work
}
}
}
.Imデバッグ中、button2_Clickメソッドはポインターにヒットしません。スレッドが忙しいからだと思います。
どこかでうまくいかない場合は訂正してください。