waitpid関数の使用
948 ワード
サブプロセスが正常なコードを実行しているかどうかを監視します.
while (1)
{
if (waitpid(pid, NULL, WNOHANG))//
{
pid = ForkWorker();
if (pid < 0)
{
ERROR_LOG("master_monitoragent: failed to refork worker_monitoragent!");
}
else if (pid > 0)
{
INFO_LOG("master_monitoragent: success to refork worker_monitoragent!");
}
}
sleep(5);
}