php 循环多线程演示
date_default_timezone_set( "Asia/Chongqing");
echo "父进程启动, 进程ID: ", getmypid(), "
" ;
showPHPId();
for ($i=0; $i<3; ++$i){
$pid = pcntl_fork();
if ($pid == -1){
die ("不能产生进程" );
}elseif ($pid > 0){
echo "父进程执行
";
echo "父亲内:";
showPHPId();
}elseif($pid == 0){
echo "子进程{$i}开启, 进程ID: ", getmypid(), "
" ;
echo "儿子内:";
showPHPId();
//exit ;
}
}
//优雅的展示进程
function showPHPId(){
echo "showPHPId:",getmypid(), " " , date( "Y-m-d H:i:s", time()), "
" ;
sleep(5);
}
// 运行时候 最高产生 8个进程
// 父进程执行 7遍
// 最顶部执行一遍
// 子进程0 执行 1遍
// 子进程1 执行 2遍
// 子进程2 执行 4遍
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。