2017-08-23 14 views
0

私は、execlでプロセスを実行する子とそれを待つ親を持っています。私がstopEvent(pipe2とpollで実装されている)を受け取った場合、その子は強制終了されます。子供が10分以上(sigtimedwaitでmonitore)プロセスを実行すると、その子供は殺されます。私がpollとsigtimedwaitの両方を実装しようとすると、stopEventが返されますが、子プロセスは10分間実行された後、閉じられます。 誰かがこれを実装するための効率的な方法を知っていますか?イベントが受信された場合、またはタイムアウトの場合に処理を終了します。

答えて

1

pollには、タイムアウトパラメータがあります。これは、ポーリングやシグナルよりも管理が簡単です。

+0

私は知っていますが、私は独立したイベントの2つのヒントを持っています:stopEventとタイムアウト。親では、タイムアウトイベントを待つ別のスレッドを開始しました。 –

+0

親が待っていることを知らせるシグナルが送信されたら、子が親から待つ信号を送信できますか?それは子供にタイムアウトをさせるよりも少し残忍です。 – stefaanv

関連する問題