位置: 编程技术 - 正文

php中实现进程锁与多进程的方法(php如何实现多进程)

编辑:rootadmin

推荐整理分享php中实现进程锁与多进程的方法(php如何实现多进程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php进程通信,php 线程 进程,php进程模型,php 线程 进程,php进程数量怎么决定,php 线程 进程,php进程模型,php 进程锁,内容如对您有帮助,希望把文章链接给更多的朋友!

为什么需要进程锁?

主要作用就是防止你重复执行同一程序,主要用在crontab中,当你设置了一个定时任务,然后每分钟执行一次,如果不加进程锁的话,之前的进程没有执行完的情况下。每分钟都会有新的进程生成了。加上进程锁之后,每次定时任务执行的时候,就会去判断之前的进程锁是否存在,如果存在就不执行。

1.单进程的情况的进程锁实现

直接来个例子好了,写个php脚本, 就先命名为process.php吧,代码如下:

然后在linux环境下,执行这个代码,第一次会正常运行,然后第二次运行的时候就会提示:Process already exists. 之后无论执行多少次都会出现这个提示表示进程失败了。

php中实现进程锁与多进程的方法(php如何实现多进程)

上面的代码同样可以利用在你定时计划的脚本里,在开头加上就好了。相当于对单个脚本加上进程锁。

2.进程锁实现多进程

上面说的是一个锁对应一个php脚本,那要用进程锁实现多进程的话,其实就是让一个进程可以有多个进程锁就好了。 对上面的代码的进程锁的名字部分稍加改动即可实现,根据传进来的参数来决定进程锁的名字,如果传进来的参数一致则对应同一个锁。

在linux环境下。进入文件所在目录,执行php process.php 1, 然后新开个窗口,在执行php process.php 1,就会提示Process already exists这个错误,但是如果你执行的是php process.php 2,就会正常运行,同样,你可以传两个参数,如php process.php 1 2,这样的话,对应的又是新的进程锁。这个实现主要用到的是argc和argv 这两个php自带的参数,argc表示参数总数,argv 表示具体调用的时候用的是哪个参数。

3.进程锁在yii2中的实现

在yii2中要实现多进程的进程锁的话,要继承yii的console里的控制器,这样能实现参数的传递,use yiiconsoleController; 然后在crontab中,命令如下,用yii自带的命令来执行定时脚本。然后进程锁的代码和上面的一样就可以了。

4.杀死进程的命令

这个绝对是压箱底的东西了,一般人我不告诉他。 通过一条命令就能删除对应的进程。下面的命令就是可以直接删除进程名字为 process_name 的所有进程。要删除什么只要直接将 process_name修改成你想要删除的进程名字就可以了

总结

标签: php如何实现多进程

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

上一篇:PHP简单实现上一页下一页功能示例(php zmq)

下一篇:PHP 等比例缩放图片详解及实例代码(前端等比例缩放)

  • 企业为员工缴纳公积金的通知
  • 税收征管法实施细则全文最新
  • 个税系统里的免税收入在哪删除
  • 利息调整的计算公式
  • 没有报关单可以结汇吗
  • 不同外币之间的折算
  • 计入增值税应税销售额
  • 印花税的会计处理
  • 特许权使用费如何确认收入
  • 税务系统勾了为什么还能认证?
  • 电费发票勾选是啥意思
  • 所得税费用为负数需要体现在报表上吗
  • 如何能减免个人所得税
  • 国家税务总局2011年第25号公告
  • 资产减值损失在贷方表示什么意思
  • 待处理财产损益的二级科目
  • 小规模企业记账流程
  • 收到转账支票怎么填写凭证
  • windows11禁止自动更新
  • 电脑怎么搜索文档
  • 在建工程的二级明细的讲解
  • php表单验证实例
  • Win10 Build 19044.1288累积更新补丁KB5006670(附更新修复内容汇总)
  • ireike.exe - ireike是什么进程 有什么作用
  • 用php做一个表格
  • 对账小技巧
  • 财务管理是如何工作的
  • 购买材料结转成本的会计分录
  • 在沙滩上的语句
  • ai绘图素材
  • 广告费和业务宣传费调增还是调减
  • 小规模纳税人会计分录
  • php中文编程
  • yolov7训练自己的模型用 flask封装
  • require.context()的用法详解
  • 大前端需要掌握什么技能
  • 预付一年的房租并收到了发票会计分录
  • python每行输出五个且对齐
  • 企业合并的定义是什么
  • 什么是企业所得税收入
  • 关联方计提坏账准备如何规定
  • 企业年金的功能代理人
  • 物业代收代缴是什么意思
  • mysql多表左连接查询
  • 增值税专用发票有几联?
  • 主要业务活动是什么意思
  • 火车票丢了怎么办
  • 顾问费交多少税
  • 利息收入如何入会计科目
  • 买一赠一怎么做账
  • 计提福利费的会计分录
  • 研究开发费用加计扣除最新政策
  • 小规模纳税人采购需要发票吗
  • 期末汇兑损益的输入方式
  • 多年没有做账该怎么说
  • 旅行社代订的机票可以抵扣吗
  • 小企业应该如何发展
  • 删除表s
  • macossierra安装发生错误
  • win10预览版退回正式版
  • win7 64位系统安装绘声绘影8提示已安装另一个版本的解决方法
  • Ubuntu如何安装软件
  • win7与xp双系统设置
  • 批处理删除空文件夹
  • django 验证码
  • python 堆叠
  • [置顶]游戏名:chivalry2
  • 表单元素的属性
  • angular创建service
  • jquery easing
  • python计算π值
  • 安卓自定义app
  • google it automation with python
  • 水电费的增值税专用税可抵扣进项
  • 企业代理申报还用自己申报吗
  • 旅游景区可免交土地使用税
  • 电子税务密码输入错误五次怎么办
  • 个人无偿捐赠增值税
  • 增值税税率有哪些规定
  • 福建地税网上办事大厅
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设