0

重複の可能性:
.NETで現在アクティブな管理対象スレッドのリストを取得していますか?

ac#メソッドでは、次の構成で同時に複数のスレッドを開始します。

new Thread(() =>
{
    Application.Run(...);
}).Start();

後ですべてのアクティブなスレッドのリストを取得し、メインスレッドを除くすべてのスレッドを強制終了するにはどうすればよいですか?

4

1 に答える 1

0

本当にスレッドを強制終了したい場合は、新しいThread()から戻り値を取得し、 myThread.Abort()を呼び出します。

Thread myThread = new Thread(() =>
{
    Application.Run(...);
}).Start();

// ...

myThread.Abort();

http://msdn.microsoft.com/en-us/library/system.threading.thread.abort.aspx

ただし、スレッドを協調的に終了することをお勧めします。

スレッドをキャプチャして自分で追跡したくない場合は、おそらくプロファイリング/デバッグAPIを使用してプロセス内のスレッドを列挙する必要があります

C#ですべての管理対象スレッドを列挙するにはどうすればよいですか?

協調スレッディングと一般的なスレッディングについてさらに学ぶために、私は優れた記事を提案します

http://www.albahari.com/threading/

于 2013-01-16T22:10:46.740 に答える