程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php popen實現多任務

php popen實現多任務

編輯:關於PHP編程

Php代碼   
<?php 
$update_num = 1000; 
$limit = 100; 
$p_num = 0; 
 
$line_cmd = 'ps -ef | grep doit.php | grep -v grep | wc -l'; 
$exec_cmd = '/usr/local/php/bin/php doit.php %s & > /dev/null 2>&1'; 
 
$t1 = microtime(1); 
for($i = 0 ; $i < $update_num ; $i++){ 
        if($p_num <=0){ 
                $fp1 = popen($line_cmd,'r'); 
                //current shell process numbers 
                $line = fread($fp1,512); 
                pclose($fp1); 
                //processes can be pushed 
                $p_num = $limit - $line; 
                if($p_num <= 0 ){ 
                        usleep(100); 
                } 
        } 
 
        $p_num = $p_num -1; 
        $cmd = sprintf($exec_cmd,$i); 
        $fp = popen($cmd,'r'); 
 
        pclose($fp); 

 
$t2 = microtime(1); 
echo round($t2 - $t1,2); 
?> 


Php代碼   
<?php 
sleep(2); 
$fp = fopen('doit.txt','a'); 
fwrite($fp,$argv[1]."\n"); 
fclose($fp); 
exit(0); 
?>  (fblww-0227)


摘自 網絡營銷

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved