国产探花免费观看_亚洲丰满少妇自慰呻吟_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);}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 夏河县| 辽源市| 根河市| 长垣县| 高要市| 德保县| 灵寿县| 阿勒泰市| 永兴县| 德江县| 新津县| 东台市| 广西| 昌都县| 余干县| 高尔夫| 尼玛县| 灌南县| 巴东县| 九江县| 蒲城县| 绥化市| 隆昌县| 江华| 贡山| 冕宁县| 阳朔县| 武宣县| 恩施市| 来凤县| 堆龙德庆县| 尉氏县| 尤溪县| 且末县| 慈溪市| 金门县| 黑河市| 读书| 阿鲁科尔沁旗| 邢台县| 墨脱县|