Linux下实现PHP多进程的方法分享


Posted in PHP onAugust 16, 2012

PHP多进程:使用PHP的Process Control Functions(PCNTL/线程控制函数)
函数参考可见:http://www.php.net/manual/zh/ref.pcntl.php
只能用在Unix Like OS,Windows不可用。
编译php的时候,需要加上?enable-pcntl,且推荐仅仅在CLI模式运行,不要在WEB服务器环境运行。

以下为实现PHP多进程的简单测试代码:

<?php 
declare(ticks=1); 
$bWaitFlag = FALSE; /// 是否等待进程结束 
$intNum = 10; /// 进程总数 
$pids = array(); /// 进程PID数组 echo ("Start\n"); 
for($i = 0; $i < $intNum; $i++) { 
$pids[$i] = pcntl_fork();/// 产生子进程,而且从当前行之下开试运行代码,而且不继承父进程的数据信息 
if(!$pids[$i]) { 
// 子进程进程代码段_Start 
$str=""; 
sleep(5+$i); 
for ($j=0;$j<$i;$j++) {$str.="*";} 
echo "$i -> " . time() . " $str \n"; 
exit(); 
// 子进程进程代码段_End 
} 
} 
if ($bWaitFlag) 
{ 
for($i = 0; $i < $intNum; $i++) { 
pcntl_waitpid($pids[$i], $status, WUNTRACED); 
echo "wait $i -> " . time() . "\n"; 
} 
} 
echo ("End\n"); 
?>
PHP 相关文章推荐
php checkbox 取值详细说明
Aug 19 PHP
php 归并排序 数组交集
May 10 PHP
input file获得文件根目录简单实现
Apr 26 PHP
PHP 正则表达式小结
Feb 12 PHP
php通过获取头信息判断图片类型的方法
Jun 26 PHP
详解WordPress中简码格式标签编写的基本方法
Dec 22 PHP
一个简单的php路由类
May 29 PHP
PHP表单验证内容是否为空的实现代码
Nov 14 PHP
PHP中的使用curl发送请求(GET请求和POST请求)
Feb 08 PHP
CI(CodeIgniter)框架实现图片上传的方法
Mar 24 PHP
PHP检查网站是否宕机的方法示例
Jul 24 PHP
Laravel中如何轻松容易的输出完整的SQL语句
Jul 26 PHP
PHP基础知识回顾
Aug 16 #PHP
php开发文档 会员收费1期
Aug 14 #PHP
php适配器模式介绍
Aug 14 #PHP
PHP缓存技术的多种方法小结
Aug 14 #PHP
PHP最常用的2种设计模式工厂模式和单例模式介绍
Aug 14 #PHP
php调用dll的实例操作动画与代码分享
Aug 14 #PHP
php中计算未知长度的字符串哪个字符出现的次数最多的代码
Aug 14 #PHP
You might like
php使用fputcsv()函数csv文件读写数据的方法
2015/01/06 PHP
PHP数据库操作四:mongodb用法分析
2017/08/16 PHP
JQuery实现简单验证码提示解决方案
2012/12/20 Javascript
JavaScrip实现PHP print_r的数功能(三种方法)
2013/11/12 Javascript
js和jquery使按钮失效为不可用状态的方法
2014/01/26 Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
2014/02/04 Javascript
jquery 实现input输入什么div图层显示什么
2014/06/15 Javascript
关闭页面window.location事件未执行的原因及解决方法
2014/09/01 Javascript
使用JavaScript 实现的人脸检测
2015/03/24 Javascript
BootStrap Table对前台页面表格的支持实例讲解
2016/12/22 Javascript
JS实现HTML标签转义及反转义
2020/04/14 Javascript
将鼠标焦点定位到文本框最后(代码分享)
2017/01/11 Javascript
JavaScript实现写入文件到本地的方法【基于FileSaver.js插件】
2018/03/15 Javascript
分享5个顶级的JavaScript Ajax组件库
2018/09/16 Javascript
发布Angular应用至生产环境的方法
2018/12/10 Javascript
Python命名空间详解
2014/08/18 Python
Python的Twisted框架中使用Deferred对象来管理回调函数
2016/05/25 Python
Python使用正则表达式过滤或替换HTML标签的方法详解
2017/09/25 Python
浅谈Python Opencv中gamma变换的使用详解
2018/04/02 Python
windows10下python3.5 pip3安装图文教程
2018/04/02 Python
对python使用http、https代理的实例讲解
2018/05/07 Python
详解pyenv下使用python matplotlib模块的问题解决
2018/11/29 Python
使用Python内置模块与函数进行不同进制的数的转换
2020/04/26 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
一个非常简单好用的Python图形界面库(PysimpleGUI)
2020/12/28 Python
详解HTML5中的Communication API基本使用方法
2016/01/29 HTML / CSS
介绍一下grep命令的使用
2015/06/12 面试题
毕业生自荐信的主要内容
2013/10/29 职场文书
企业统计员岗位职责
2013/12/13 职场文书
装饰资料员岗位职责
2013/12/30 职场文书
2014年社区庆元旦活动方案
2014/03/08 职场文书
网络文明传播志愿者活动方案
2014/08/20 职场文书
三八红旗手主要事迹材料
2015/11/04 职场文书
新手,如何业余时间安排好写作、提高写作能力?
2019/10/21 职场文书
Java Socket实现多人聊天系统
2021/07/15 Java/Android
MySql重置root密码 --skip-grant-tables
2022/04/11 MySQL