PHP有个pcntl_fork的函数可以实现多进程,但要加载pcntl拓展,而且只有在linux下才能编译这个拓展,有时间在ubuntu下玩了下。
1.首先在ubuntu下编译pcntl.so,我的ubuntu下找不到pcntl的包,于是
创建一个文件夹下载了整个PHP包,在里面找到了pcntl包运行如下命令
phpize 命令是用来准备 PHP 外挂模块的编译环境的。
成功的安装将建立 extname.so 并放置于 PHP 的外挂模块目录中 (预设存放于 /usr/lib/php/modules/ 内) 。
需要调整 php.ini,加入 extension=extname.so 这一行之后才能使用此外挂模块。
2,开始实验pcntl_fork
01 |
<?php |
02 |
//while(1)//循环采用3个进程 |
03 |
//{ |
04 |
//declare(ticks=1); |
05 |
$bWaitFlag = FALSE;<span class="Apple-converted-space"> </span> // 是否等待进程结束
|
06 |
//$bWaitFlag = TRUE; // 是否等待进程结束 |
07 |
$intNum = 3;<span class="Apple-converted-space"> </span> // 进程总数
|
08 |
$pids =<span class="Apple-converted-space"> </span> array ();<span class="Apple-converted-space"> </span> // 进程PID数组
|