pcnlt_forkで親が死んだときって子って行き続けるんだね

個人的なメモなので気にしないでください


親が死んだら子も死ぬのかなと早合点してたけど、違うんだね
親でexit()したそうなるもんね、うんうん
子で、pcntl_alarm()しとけばおkおk

#!/usr/bin/env php
<?php
while (true) {

    $pid = pcntl_fork();

    if ($pid == -1) {
        die('die');
    } elseif ($pid) {
        //exit();
    } else {
        echo "child process created\n";
        //pcntl_alarm(10); // after 10 seconds later, child process send signal and exit

        for (;;) {
            echo "child pid = " . posix_getpid() . ", parent pid = "
                 . posix_getppid() . "\n"; // posix_getppid()が1なら親死んでる
            sleep(1);
        }

    }

}
?>