位置: 编程技术 - 正文

PHP多进程编程之僵尸进程问题的理解(php多进程开发)

编辑:rootadmin

推荐整理分享PHP多进程编程之僵尸进程问题的理解(php多进程开发),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php多进程处理任务,php多进程写入文件,php多进程开发,php 多进程 多线程,php 多进程 多线程,php是多进程还是单进程,php是多进程还是单进程,php 多进程 多线程,内容如对您有帮助,希望把文章链接给更多的朋友!

PHP多进程编程之僵尸进程问题的理解

使用pcntl_fork函数可以让PHP实现多进程并发或者异步处理的效果: shutdown

2. 杀死该进程的父进程。

但是这两种方法都不行,因为这个程序的目的是监控常驻在服务器内,服务器不能关闭,并且父进程也不能被干掉。这时候我们看到了官方文档对于fork方法的解释:

原来有种方式可以防止进程成为僵尸进程,但是,官网给出的代码是这样子的:

PHP多进程编程之僵尸进程问题的理解(php多进程开发)

什么意思呢?就是父进程会等待子进程运行,等子进程运行结束之后,才会进行下一步,并且也会消除僵尸进程。但是这里又和我们的需求不符合了,我们的子进程为一个死循环的程序,不断的查找输出,更本没有结束的时候,并且我们需要的是异步处理而不是同步。但是这个方法可以用吗?其实当然可以。

在pcntl_wait的文档中是这么解释这个函数的:

wait函数刮起当前进程的执行直到一个子进程退出或接收到一个信号要求中断当前进程或调用一个信号处理函数。 如果一个子进程在调用此函数时已经退出(俗称僵尸进程),此函数立刻返回。子进程使用的所有系统资源将 被释放。关于wait在您系统上工作的详细规范请查看您系统的wait(2)手册。

我们发现,当这个函数发现子进程成为了僵尸进程就会释放僵尸进程的资源——前提是这个僵尸进程为这个父进程的子进程。那么我们就可以巧妙的利用这个方式让这些僵尸进程释放资源了,所以就有了如下代码:

这样我们先使用kill干掉这个进程,这个进程就不会再运行了,但是这个进程成为了僵尸进程,占用着资源,我们下一句就执行一次pcntl_wait()让这些僵尸进程释放资源,这样,子进程才真正的被终止了,僵尸进程被消除了。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP-X系列教程之内置函数的使用示例 前言本文主要给大家介绍关于PHP-X内置函数的使用,在PHP扩展开发中,会经常用到这些内置函数,PHP-X的封装,使得调用这些函数像PHP代码一样简单。对p

PHP实现统计所有字符在字符串中出现次数的方法 本文实例讲述了PHP实现统计所有字符在字符串中出现次数的方法。分享给大家供大家参考,具体如下:先来看看效果:算法:循环一次字符串(本例的$s

PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案 前言mcrypt扩展已经过时了大约年,并且用起来很复杂。因此它被废弃并且被OpenSSL所取代。从PHP7.2起它将被从核心代码中移除并且移到PECL中。PHP手册在7

标签: php多进程开发

本文链接地址:https://www.jiuchutong.com/biancheng/284192.html 转载请保留说明!

上一篇:浅谈PHP接入(第三方登录)QQ登录 OAuth2.0 过程中遇到的坑(php接收数据的方法)

下一篇:PHP-X系列教程之内置函数的使用示例(php的教程)

  • 支付境外劳务费需要缴纳哪些税费
  • 小规模纳税人进货分录
  • 小规模定额征收是怎样
  • 汇算退回的所得税分录
  • 退税流程怎么操作APP
  • 主营业务成本包括职工薪酬吗
  • 政府补贴营业外收入所得税汇算清缴需要调增吗
  • 收据盖公章要注意哪些
  • 城市基础设施配套有哪些
  • 个人投资企业投资人签字
  • 增值税普通发票可以抵扣吗
  • 有留抵增值税怎么做账
  • 延迟交款收息做什么科目?
  • 工会账务期末结转
  • 电商刷单的成本如何处理?
  • 顾客办理会员卡要退怎么办
  • 应交税金明细账余额怎么算
  • 如何计算非居民用电量
  • 地址变更工商局上门检查
  • 国税发200931号文件解读
  • 最新《资源税纳税标准
  • 计提缴纳社保的会计分录
  • 境内个人去境外开设公司
  • 商业承兑汇票贴现为什么是短期借款
  • 对外投资的风险及对策
  • 库存商品怎么结转损益
  • 预付股权转让款如何处理
  • 补缴公积金账务处理
  • 会计制度备案成本核算方法一般选择哪个
  • 事业单位租赁收入的处理
  • 其他综合收益属于什么科目借贷
  • php中的require
  • win11怎么创建新用户
  • php转word
  • 索尼体积最小的微单
  • 转租收入是否缴纳房产税江苏
  • 资产减值损失的计算公式
  • 货物品种不太多而数量又相对较大
  • 销售不动产税目计缴增值税有哪些
  • 汇算清缴资产总额怎么算
  • 葡萄牙海岸风光
  • 网上报税流程演示2019
  • 员工报销车辆费怎么处理
  • 印花税缴纳方式不包括哪些
  • 预交的诉讼费怎么做账
  • 新公司财务需要哪些东西
  • 为客户购买的机票怎么入账
  • 往来款和货款
  • 上月留抵税额怎么看
  • 加计抵减附加税怎么算
  • 应税销售行为如何处理
  • 提供加工劳务计入什么科目
  • 市政配套费交给哪个部门
  • 有奖销售增值税处理
  • mysql批量修改字段值
  • MSSQL 2005/2008 日志压缩清理方法小结
  • sql语句错误提示
  • sql实现分组查询的短语
  • mac10.5系统
  • linux oracle图形界面
  • centos sudoers
  • mac 应用
  • vmware虚拟机Linux扩展硬盘
  • win8打开ie
  • linux 文件夹权限 777
  • win8.1系统激活
  • win10 Mobile 10586.36预览版更新了哪些内容?
  • linux记录操作记录
  • 在对linux系统中dir
  • linux安装docker-compose
  • javascript怎么用
  • 如何在python中运行程序
  • Python 'takes exactly 1 argument (2 given)' Python error
  • mvc使用
  • python多线程怎么用
  • h5实现微信分享
  • 南京交税的标准2019
  • 内蒙古电子税务局登录入口官网
  • 福建地税网上办事大厅
  • 本科毕业去上海找什么工作好
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设