Win32API質問箱 Build38
■ このスレッドは過去ログ倉庫に格納されています
0499493
2005/12/19(月) 23:45:27ありがとうございます。
今、主要なところを抜き出してプロジェクト作ってます。
詳細が分かりにくいのでもうちょっと書きます。
>> 子プロセスで WaitForSingleObject が拾ってくれない
>の動作の詳細(どうなってほしいが、実際にはどう動く)が知りたいところ。
親から子を CreateProcess してます。
親でイベントを2つ CreateEvent して、1つは子を終了させるときに SetEvent します。
そのあと親ではもう1つのイベントを WaitFor してます。
子の方では、起動時に、親で CreateEvent したのと同じ名前で OpenEvent してます。
その後、メインスレッドのループで WaitFor(タイムアウト0) していて、
親からプロセス終了のイベントがセットされるのを調べてます。(★ここでイベントがシグナルだと分かってくれない)
もしイベントが検知できたら、ゴミ掃除をしてからもう1つのイベントを SetEvent します。
親ではもう1つのイベントの方の WaitFor が検知できるはずなので、
その後、子をTerminateProcess してます。
>ちなみに子プロセスの終了検出は、子プロセスを普通に終了させて、
>親プロセスでは子プロセスHANDLEをWaitForSingleObject()するほうが素直。
はい、そうなんですよね。。。
ただスレッドとかその他グローバルに確保してるリソースを解放しないといけないので
『プロセスが終わる直前』を通知したいんです。
■ このスレッドは過去ログ倉庫に格納されています