Windows 10 のスレッド プールの動作
Windows 10 では、一見単純な C プログラムに追加のスレッドが導入されているのはなぜですか? Windows 7 と Windows 10 でこのようなプログラムの動作を比較すると、この疑問が生じます。Windows 7 ではデバッガーに 1 つのスレッドしか表示されませんが、Windows 10 では 4 つの「ワーカー スレッド」を含む 5 つのスレッドが表示されます。
キーこの現象を理解するには、Windows 10 上のローダー ntdll.dll の役割にあります。スレッド プール スレッドのエントリ ポイントである TppWorkerThread() 関数にブレークポイントを設定することで、最初のスレッドプールのスタック トレースをキャプチャできます。スレッドが作成されています。
スタック トレースにより、ローダーがスレッドプールを利用して Windows 10 に DLL をロードしていることがわかります。この同時実行により、Windows 10 は複数のコアを利用できるようになり、プロセスの初期化が高速化されます。
したがって、Windows 10 上の単純な C プログラムに見られる追加のスレッドは、ローダーの最適化技術の副産物です。この動作はパフォーマンスの向上を目的としており、Windows 10 のリソース管理の進歩に起因すると考えられます。
以上がWindows 10 上の単純な C プログラムに余分なスレッドが存在するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。