<?php //输出重定向到log文件 function echo_to_log($content){ global $html' target='_blank'>current_pid; $logfile = __FILE__ . $current_pid . '.log'; $fp = fopen($logfile, 'a+'); fwrite($fp, $content); fclose($fp);}ob_start('echo_to_log');//获取当前进程pid$current_pid = getmypid();$fork_nums = 10; $total = 1000; for($i = 0; $i < $fork_nums; $i++){ $pid = pcntl_fork(); //等于0时,是子进程 if($pid == 0){ $current_pid = getmypid(); do_task($i); // 大于0时,是父进程,并且pid是产生的子进程PID } else if ($pid > 0){ }}//任务函数function do_task($task_num){ global $total; $start = $total / 10 * $task_num; $end = $total / 10 * ($task_num + 1); for(;$start<$end;$start++){ echo $task_num . " " . $start . "/n"; } //子进程执行完任务以后终止,当然你可以返回主进程的代码部分做相关操作。 exit();}
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答