php pcntl_fork和pcntl_fork 的用法


Posted in PHP onApril 13, 2009

pcntl_fork()函数就是为当前的进程创建一个子进程。并且先运行父进程,返回的是子进程的PID,肯定大于零。在父进程的代码中可以用pcntl_fork(&$status)暂停父进程知道他的子进程有返回值。注意:父进程的阻塞同时会阻塞子进程。但是父进程的结束不影响子进程的运行。
父进程运行完了会接着运行子进程,这时子进程会从执行pcntl_fork()的那条语句开始执行(包括此函数),但是此时它返回的是零(代表这是一个子进程)。在子进程的代码块中最好有exit语句,即执行完子进程后立即就结束。否则它会又重头开始执行这个脚本的某些部分(一直没有总结出规矩)。
总之,注意两点:
1。子进程最好有一个exit;语句,防止不必要的出错;
2.

$pid = pcntl_fork(); 
//这里最好不要有其他的语句 
if ($pid == -1) { 
die('could not fork'); 
} else if ($pid) { 
// we are the parent 
pcntl_wait($status); //Protect against Zombie children 
} else { 
// we are the child 
}
PHP 相关文章推荐
php 字符过滤类,用于过滤各类用户输入的数据
May 27 PHP
从手册去理解分析PHP session机制
Jul 17 PHP
php实现httpclient类示例
Apr 08 PHP
浅析php单例模式
Nov 25 PHP
php经典算法集锦
Nov 14 PHP
php制作的简单验证码识别代码
Jan 26 PHP
PHP与Ajax相结合实现登录验证小Demo
Mar 16 PHP
PHP Callable强制指定回调类型的方法
Aug 30 PHP
PHP 7安装调试工具Xdebug扩展的方法教程
Jun 17 PHP
用PHP的反射实现委托模式的讲解
Mar 22 PHP
Swoole实现异步投递task任务案例详解
Apr 02 PHP
laravel http 自定义公共验证和响应的方法
Sep 29 PHP
sourcesafe管理phpproj文件的补充说明(downmoon)
Apr 11 #PHP
php 动态执行带有参数的类方法
Apr 10 #PHP
PHP获取类中常量,属性,及方法列表的方法
Apr 09 #PHP
php 随机生成10位字符代码
Mar 26 #PHP
php SQL之where语句生成器
Mar 24 #PHP
php cookie 作用范围?不要在当前页面使用你的cookie
Mar 24 #PHP
php xml实例 留言本
Mar 20 #PHP
You might like
php设计模式 Proxy (代理模式)
2011/06/26 PHP
mysql,mysqli,PDO的各自不同介绍
2012/09/19 PHP
php不使用插件导出excel的简单方法
2014/03/04 PHP
Laravel框架中集成MongoDB和使用详解
2019/10/17 PHP
php下的原生ajax请求用法实例分析
2020/02/28 PHP
用最通俗易懂的代码帮助新手理解javascript闭包 推荐
2012/03/01 Javascript
ie8本地图片上传预览示例代码
2014/01/12 Javascript
js 金额格式化来回转换示例
2014/02/23 Javascript
jQuery将多条数据插入模态框的示例代码
2014/09/25 Javascript
Javascript基础教程之switch语句
2015/01/18 Javascript
jQuery链使用指南
2015/01/20 Javascript
深入理解angularjs过滤器
2016/05/25 Javascript
javascript实现滑动解锁功能
2017/03/22 Javascript
jQuery实现获取table中鼠标click点击位置行号与列号的方法
2017/10/09 jQuery
jQuery zTree搜索-关键字查询 递归无限层功能实现代码
2018/01/25 jQuery
vue2实现搜索结果中的搜索关键字高亮的代码
2018/08/29 Javascript
从vue源码看props的用法
2019/01/09 Javascript
vue实现简易图片左右旋转,上一张,下一张组件案例
2020/07/31 Javascript
Python中title()方法的使用简介
2015/05/20 Python
Python多进程并发(multiprocessing)用法实例详解
2015/06/02 Python
Python面向对象之继承代码详解
2018/01/29 Python
Python中pandas dataframe删除一行或一列:drop函数详解
2018/07/03 Python
django celery redis使用具体实践
2019/04/08 Python
Python当中的array数组对象实例详解
2019/06/12 Python
python笔记之mean()函数实现求取均值的功能代码
2019/07/05 Python
python 图片去噪的方法示例
2019/07/09 Python
绝对令人的惊叹的CSS3折叠效果(3D效果)整理
2012/12/30 HTML / CSS
GMP办公室主任岗位职责
2014/03/14 职场文书
我的中国梦演讲稿1000字
2014/08/19 职场文书
销售经理岗位职责
2015/01/31 职场文书
工程服务质量承诺书
2015/04/29 职场文书
无保留意见审计报告
2015/06/05 职场文书
2016领导干部廉洁从政心得体会
2016/01/19 职场文书
《莫泊桑拜师》教学反思
2016/02/22 职场文书
Mysql数据库表中为什么有索引却没有提高查询速度
2022/02/24 MySQL
Spring Boot配合PageHelper优化大表查询数据分页
2022/04/20 Java/Android