首页 > 代码库 > PHP pthread多线程
PHP pthread多线程
class test extends Thread { public $arg; public function __construct($arg){ $this->arg = $arg; } public function run(){ if($this->arg){ sleep(1); echo "Hello " . $this->arg .‘:‘. date("Y-m-d H:i:s") . "<br>"; sleep(1); // file_put_contents("./log.txt", date("Y-m-d H:i:s") . "I Am SonPthread" . "\r\n", FILE_APPEND); } } } $thread = new test("World"); echo "Start Pthread:" . date("Y-m-d H:i:s") . "<br>"; sleep(1); $thread->start(); /* * Hello World:2017-07-20 11:22:29 * Start Pthread:2017-07-20 11:22:27 * main thread:2017-07-20 11:22:28 */ if($thread->start()){ $thread->join(); } /* * Hello World:2017-07-20 11:23:23 * Start Pthread:2017-07-20 11:23:21 * main thread:2017-07-20 11:23:24 */ echo "main thread:".date("Y-m-d H:i:s") . "<br>";; file_put_contents("./main.txt", date("Y-m-d H:i:s") . ":Main Thread!" . "\r\n", FILE_APPEND); echo "<br>";
join方法的作用是让当前主线程等待该线程执行完毕
确认被join的线程执行结束,和线程执行顺序没关系。
也就是当主线程需要子线程的处理结果,主线程需要等待子线程执行完毕
拿到子线程的结果,然后处理后续代码。
官方文档链接地址:http://www.php.net/manual/en/book.pthreads.php
PHP pthread多线程
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。