1.php popen如何实现多进程并发执行,循环里的pclose会等待进程完毕再进行下一次循环
2.假设有17个进程要开启,如何实现每次启动5个进程,并且每完成一个进程就关闭一个进程,同时开启下一个进程,也就是说最多只有5个进程同时执行
//启动2个进程for($i = 0;$i > $logfile$i; echo 进程开启时间.date('y-m-d h:i:s').\n; $resource = popen($command,'r'); if(is_resource($resource)){ $success++; pclose($resource);//下一次循环会等待上一个进程执行完毕,pclose才会释放资源 echo date('y-m-d h:i:s'). 进程:.$i.启动完毕,执行完毕并关闭,开启下一个进程\n; }else{ $failure++; }}
这样的做法相当于每次启动一个进程,循环执行,相当于单进程处理任务,如何做到多进程
回复内容: 1.php popen如何实现多进程并发执行,循环里的pclose会等待进程完毕再进行下一次循环
2.假设有17个进程要开启,如何实现每次启动5个进程,并且每完成一个进程就关闭一个进程,同时开启下一个进程,也就是说最多只有5个进程同时执行
//启动2个进程for($i = 0;$i > $logfile$i; echo 进程开启时间.date('y-m-d h:i:s').\n; $resource = popen($command,'r'); if(is_resource($resource)){ $success++; pclose($resource);//下一次循环会等待上一个进程执行完毕,pclose才会释放资源 echo date('y-m-d h:i:s'). 进程:.$i.启动完毕,执行完毕并关闭,开启下一个进程\n; }else{ $failure++; }}
这样的做法相当于每次启动一个进程,循环执行,相当于单进程处理任务,如何做到多进程