|
由于php的進(jìn)程是不支持多線程的,有些場景為了方便以及提高性能,可以用php實(shí)現(xiàn)多進(jìn)程以彌補(bǔ)這個(gè)不足:
復(fù)制代碼 代碼如下:
#!/usr/bin/env php
<?php
$cmds=array(
array('/apps/bin/launcher.php','charge/promotion_props_stat.php','mobile',1),
array('/apps/bin/launcher.php','charge/promotion_props_stat.php','mobile',2),
array('/apps/bin/launcher.php','charge/promotion_props_stat.php','click',1),
array('/apps/bin/launcher.php','charge/promotion_props_stat.php','click',2),
array('/apps/bin/launcher.php','charge/promotion_props_stat.php',1),
array('/apps/bin/launcher.php','charge/promotion_props_stat.php',2)
);
foreach($cmds as $cmd){
$pid=pcntl_fork();
if($pid==-1){ //進(jìn)程創(chuàng)建失敗
die('fork child process failure!');
}
else if($pid){ //父進(jìn)程處理邏輯
pcntl_wait($status,WNOHANG);
}
else{ //子進(jìn)程處理邏輯
pcntl_exec('/usr/local/bin/php',$cmd);
}
}
php技術(shù):解析PHP實(shí)現(xiàn)多進(jìn)程并行執(zhí)行腳本,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。