サブプロセスを開始するプロセスがあり、サブプロセスが終了すると、サブプロセス/proc/<pid>/stat
によって使用されるCPUとメモリに関する情報を収集するために検索されます。ところが借りた時にここに来たのではないか心配になる。wait()
シグナルハンドラを返したり送信/呼び出しした後にSIGCHLD
実際に応答が停止する時間はどれくらいですか? PIDを再利用する必要があるまで続くと、非常に便利です。しかし、明らかにそうではありません。
ベストアンサー1
/proc/[pid]
プログラムが終了すると消えます。確認してください:https://superuser.com/questions/365576/lifetime-of-the-symlinks-from-the-file-descriptors-in-proc-pid-fd
編集する:
マニュアルページが話すまでお待ちください。
wait() 関数は、呼び出しプロセスの終了した子プロセスの 1 つの状態情報が使用可能になるまで、または信号取得関数を実行するか、スレッドを終了して動作する信号が渡されるまで呼び出しスレッドの実行を中断します。する必要があります。プロセス。
したがって、サブプロセスを終了するために信号が送られた可能性がある。その後、wait
返されますが、子プロセスはまだ終了していません。だからあなたはまだ読むことができます/proc/pid/stat
。子プロセスが終了すると/proc/pid/stat
消えます。