赞
踩
在PHP中使用线程,主要依赖于pthreads
扩展,这是一个为PHP提供多线程能力的扩展。然而,需要注意的是,pthreads
扩展自PHP 7.4起已被废弃,并在PHP 8.0中完全移除,不再支持在Web环境或CLI(命令行界面)中使用。因此,对于当前主流的PHP版本(如PHP 8.x),直接使用pthreads
进行多线程编程已不再是推荐的做法。
- <?php
- // 安装 pthreads 扩展后,启用
- // extension=pthreads.so
-
- class MyThread extends Thread {
- public function __construct($i) {
- $this->i = $i;
- }
-
- public function run() {
- printf("Thread #%d started\n", $this->i);
- sleep(2);
- printf("Thread #%d ended\n", $this->i);
- }
- }
-
- // 创建多个线程
- $threads = [];
- for ($i = 0; $i < 5; $i++) {
- $threads[] = new MyThread($i);
- }
-
- // 启动线程
- foreach ($threads as $thread) {
- $thread->start();
- }
-
- // 等待所有线程结束
- foreach ($threads as $thread) {
- $thread->join();
- }
- ?>
优化多线程代码需要注意以下几点:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。