1.如果子進程先於父進程退出, 同時父進程又沒有調用wait/waitpid,則該子進程將成為僵屍進程 2.如果fork完就不管了可以使用 忽略子進程信號, 防止僵屍進程 pcntl_signal(SIGCLD, SIG_IGN); 3.如果在主進程中,可以等待子進程的退出 , 這樣也能防止出現僵屍 ...
1.如果子進程先於父進程退出, 同時父進程又沒有調用wait/waitpid,則該子進程將成為僵屍進程
2.如果fork完就不管了可以使用 忽略子進程信號, 防止僵屍進程
pcntl_signal(SIGCLD, SIG_IGN);
3.如果在主進程中,可以等待子進程的退出 , 這樣也能防止出現僵屍進程
pcntl_wait($status)
4.如果我是一個while死迴圈 , 裡面始終控制住進程的數量
wait函數 , 是在判斷一定進程數量後才執行到
在fork完子進程後 , 一定要讓在最開始讓子進程睡眠幾秒 , 否則理解就退出了 , 還沒等到wait函數 , 也會變成僵屍進程