> php教程 > php手册 > php多任务程序实例解析

php多任务程序实例解析

WBOY
풀어 주다: 2016-06-06 20:20:05
원래의
2146명이 탐색했습니다.

这篇文章主要介绍了php多任务程序实例,需要的朋友可以参考下

本文以实例简单解析了php多任务程序的实现方法,,具体代码如下:

_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); }

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿