一、phpinfo()查看已安装php版本是否线程安全及编译器版本
ThreadSafety项enabled表示线程安全
Compiler项表示编译器
二、根据以上信息及系统版本选择pthreads版本
pthreads下载地址:http://windows.php.net/downloads/pecl/releases/pthreads/
本机下载php_pthreads-2.0.9-5.6-ts-vc11-x86.zip
2.0.9为pthreads版本,5.6为php版本,vc11为编译版本。
三、解压pthreads 并配置php和apache
1、将pthreads解压文件夹下php_pthreads.dll复制到php安装目录ext文件夹下
2、将pthreads解压文件夹下pthreadVC2.dll复制到php安装目录与php.exe同级文件夹下
3、将pthreads解压文件夹下pthreadVC2.dll复制到apache安装目录php文件夹下
四、编写多线程代码,测试配置是否成功
<?php
class AsyncOperation extends Thread {
public function __construct($arg){
$this->arg = $arg;
}
public function run(){
if($this->arg){
printf("Hello %s\n",$this->arg);
}
}
}
$thread = new AsyncOperation("World");
if($thread->start())
$thread->join();
?>
输出Hello World,测试成功。