国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php多任務程序實例解析

2024-05-04 23:24:27
字體:
來源:轉載
供稿:網友

本文以實例簡單解析了php多任務程序的實現方法,具體代碼如下:

<?phperror_reporting(E_ALL);set_time_limit(0);/*** php多任務程序的實現* 借助proc_open* 其實該叫進程(process)* 能啟動多進程,你可以使用你的想象力做你想做的了,以后再寫個能用的* 如果你是在linux上跑php,并且啟用pcntl模塊后,使用pcntl函數該更好* */class Thread { protected $_pref; // process reference protected static $_instance = null; protected $_pipes;private function __construct() {$this->_pref = 0; }public static function getInstance($file) {if (null == self::$_instance) {self::$_instance = new self;}$descriptor = array(0 => array("pipe", "r"),1 => array("pipe", "w"),2 => array("file", "./error-output.txt", "a"),);self::$_instance->_pref = proc_open("php -q $file", $descriptor, self::$_instance->_pipes);return true; }public function __destruct() {proc_close($this->_pref);$this->_pref = null; }}// 測試代碼$file = __FILE__;if(empty($argv[1])) { $t2 = Thread::getInstance("$file 1"); $t3 = Thread::getInstance("$file 2"); $t4 = Thread::getInstance("$file 3"); $t5 = Thread::getInstance("$file 4"); $t5 = Thread::getInstance("$file 5"); $t5 = Thread::getInstance("$file 6"); $t2 = Thread::getInstance("$file 7"); $t3 = Thread::getInstance("$file 8"); $t4 = Thread::getInstance("$file 9"); $t5 = Thread::getInstance("$file 10"); $t5 = Thread::getInstance("$file 11"); $t5 = Thread::getInstance("$file 12"); echo "Main thread done/n";} else { $somecontent = "/r/n//~~~~~~~~~~~~-這次請求序號是:" . $argv[1]; sleep(mt_rand(0, 3)); $handle = fopen($file, 'a+'); fwrite($handle, $somecontent);}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 闸北区| 陈巴尔虎旗| 庆城县| 同江市| 福鼎市| 武邑县| 长治县| 伊通| 扶风县| 山阴县| 弋阳县| 四川省| 阿荣旗| 信阳市| 五家渠市| 新昌县| 贵州省| 苍梧县| 济南市| 凤凰县| 许昌市| 龙州县| 昭平县| 拉孜县| 扎鲁特旗| 玛纳斯县| 晋宁县| 贺兰县| 金平| 大厂| 舞阳县| 云林县| 那曲县| 高平市| 桃园县| 南靖县| 碌曲县| 阳江市| 南宫市| 松滋市| 盱眙县|