php通过pcntl扩展用多进程模拟多线程
2012-07-30 19:17
387 查看
php本身是不支持多线程的,但是可以利用多进程模拟多线程。
<?php
function test($thread, $num) {
$i = 1;
while($i<=$num) {
echo $thread.":".$i."\n";
$i++;
}
}
function start_thread($thread, $num) {
$pid = pcntl_fork();
#在父线程执行时返回创建的子进程pid,在子线程执行时返回0,创建子进程失败时会在父进程上下文返回-1
if($pid == 0) {
#子进程开始执行
test($thread, $num);
}elseif($pid == -1) {
echo "线程创建失败\n";
}else{
#父进程执行
test('main thread', 100);
}
}
start_thread('worker thread1', 100);
?>
<?php
function test($thread, $num) {
$i = 1;
while($i<=$num) {
echo $thread.":".$i."\n";
$i++;
}
}
function start_thread($thread, $num) {
$pid = pcntl_fork();
#在父线程执行时返回创建的子进程pid,在子线程执行时返回0,创建子进程失败时会在父进程上下文返回-1
if($pid == 0) {
#子进程开始执行
test($thread, $num);
}elseif($pid == -1) {
echo "线程创建失败\n";
}else{
#父进程执行
test('main thread', 100);
}
}
start_thread('worker thread1', 100);
?>
相关文章推荐
- PHP中利用pcntl实现多进程(模拟多线程)实例
- php通过ssh2扩展控制linux,模拟阿里云web控制台
- php通过ssh2扩展控制linux,模拟阿里云web控制台
- PHP 7.1添加pcntl扩展支持多进程
- liunx 下安装 pcntl 扩展 php 多线程扩展,仅限liunx系统
- PHP中利用pcntl实现多进程(模拟多线程)实例
- php通过ssh2扩展控制linux,(模拟阿里云web控制台 )
- 关于PHP的多线程扩展pcntl的一些测试
- PHP多进程之pcntl扩展的使用详解
- php小代码----curl模拟登录及登录后并通过多线程进行重复post数据提交
- php通过ssh2扩展控制linux,模拟阿里云web控制台
- PHP通过php_dio扩展控制SIM800 GPRS模块模拟HTTP POST提交表单
- php通过ssh2扩展控制linux,模拟阿里云web控制台
- linux下php pcntl_fork模拟多线程
- php通过ssh2扩展控制linux,模拟阿里云web控制台
- PHP安装多进程pcntl扩展
- PHP 扩展 pcntl 实现 ” 多线程 ”( 进程 )
- php通过ssh2扩展控制linux,模拟阿里云web控制台
- php 通过http 模拟添加博客评论
- PHP通过curl模拟POST上传文件,5.5之前和之后的区别