複数のスレッドを解放しますか? 質問する

複数のスレッドを解放しますか? 質問する

そこで、非常にシンプルなコンソール アプリを用意しました。

class Program
{
    static void Main(string[] args)
    {
        Console.ReadKey();
    }
}

リリース構成でビルドしました。実行してタスク マネージャーを開くと、4 つのスレッドがあることがわかります。スレッドを作成していないのに、なぜこのようなことが起こるのでしょうか。

これは各アプリケーションではあり得ません。メモ帳を開いてみましたが、スレッドは 1 つしかありませんでした。ネイティブ アプリであり、コンソール アプリは管理されています。

何か案は?

ベストアンサー1

あなたが見ているスレッドは次の通りだと思います:

  1. メインスレッド。
  2. ファイナライザースレッド
  3. インプロセスデバッガーヘルパースレッド
  4. 同時実行 GC スレッド。

この郵便受けいくつかの特殊な CLR スレッドについて詳しく説明します。

おすすめ記事