質問
我々は観察しているの 4-6 を持っているアプリケーションでのWindows 7のx64上のスレッドの 3 を正常に任意のWindows(32または64ビット)は、従来のWindows上のスレッドと振る舞います7ます。
プロセスExplorerは、以下の "未知" のスレッドを示します
ntdll.dll!EtwDeliverDataBlock+offset
はランダムな間隔の後に次のスレッドが表示されます:
ntdll.dll!TpCallbackIndependent+offset
ntdll.dll!TpCallbackIndependent+offset
その適用後のスレッド(エラーコード8、ホット十分なスペースを...)を作成することはできません。
いくつかのシステムDLLがETWのスレッドか何かを作成するように私には思えます。誰もがこれらのスレッドがために、それらを管理する方法を知っていますか?
解決
TPスレッドは、WindowsのスレッドプールAPIの一部であり、あなたのアプリケーション(またはアプリケーションによって使用されるDLL)は、Windows API、スレッドプールを使用しているために作成されます。また、アプリケーション(またはアプリケーションで使用するDLLの1)も、スレッドのカップルを使用しETW APIを使用していることが表示されます。あなたは本当にこれらのスレッドを管理する能力を持っていません。
私は真剣にそれらのスレッドがメモリ不足エラーを引き起こしているものであることを疑います。これは、問題は、新しいスレッドのスタックのための部屋を予約するあなたのプロセスで使用できる十分な連続メモリがないということである可能性が高いです。
所属していません StackOverflow