6

プログラムを監視していて、しばらくの間 "wait:executive" 状態になっている場合は、プログラムを強制終了したいと考えています。

Process Explorer のスクリーンショットを次に示します。

状態: 待機: エグゼクティブ

コードでその状態を取得するにはどうすればよいですか? または、その状態が正確に何を意味するのか誰かに教えてもらえますか? これは、問題を解決するための適切なクエリを見つけるのに役立つ場合があります。

4

2 に答える 2

2

これは、スレッドがスケジューラ/エグゼクティブのコンポーネントを待っていることを意味します

Win32_ThreadWMI (または .net System.Diagnostics.ProcessThread WaitReason)で取得できます

于 2012-09-24T10:10:33.473 に答える
2

プログラムの状態ではなく、スレッドの状態です。1 つのプロセスが複数のスレッドを持つことができます。

一部の状態を判断するには、WaitForSingleObjectを呼び出します。

また、COM を使用してWin32_Thread クラスを選択して WMI をインスタンス化することもできます。

ここにいくつかの例があります。

詳細はこちら: win32 スレッドが c++ で Wait または Join または Sleep 状態にあることを確認する方法

于 2012-09-24T10:18:14.417 に答える