位置: 编程技术 - 正文

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 等比例缩放图片详解及实例代码(前端等比例缩放)

  • 长期待摊费用一般指什么
  • 汇算清缴所得税退回做账
  • 丢失增值税专用发票最新规定
  • 公司老板有钱吗
  • 失控发票一定要补税吗
  • 房产税从租和从价
  • 小规模企业能否抵扣
  • 投资收益科目在贷方
  • 事业单位装修费用
  • 存货的领用
  • 退销售货款的现金流是哪一个
  • 2020小规模纳税人印花税怎么算
  • 煤炭运输企业的环保方案及措施怎么写
  • 商业银行贷款账号如何查询
  • 缴纳地方教育附加费现金流量选什么
  • 一个公司帮另一个公司代付款
  • 给员工缴纳保险
  • 收外汇需要提供什么
  • 税控盘维护费是普票能全额抵扣吗
  • 小企业税金及附加会计分录
  • 审核费用发票需要发票吗
  • 行邮税税率表2023
  • 增值税小规模纳税人申报表填表说明
  • 规避税收风险什么意思
  • 财产收购的税务处理
  • 增值税预缴税款表
  • win10系统怎么永久激活
  • win8电脑系统还原
  • php数组函数题目
  • compaq-rba.exe是哪个方面的进程 作用是什么 compaq-rba进程查询
  • php字符串定义的三种方式
  • 基本工程建设项目清单
  • 借股东现金会计分录
  • 发财树的养殖方法和浇水视频
  • 股权收购账务处理方法
  • 无偿赠送增值税问题
  • 在大运河上举办什么活动
  • 前端布局flex
  • 打造出ChatGPT的,是怎样一群人?
  • 部署fabric
  • 员工安全培训费可以计入安全费用吗
  • 材料盘盈分录
  • 没有初级会计证可以从事会计工作吗
  • 2022年最新公务接待用餐标准
  • 物业管理公司经营范围有哪些内容
  • MySQL 数据库中,用于事务授权控制的关键词是下面哪个?
  • 企业所得税太高怎么合理规避
  • 进项税额的作用
  • 基础电信是什么
  • 购进货物用于建筑安装
  • 小规模纳税人企业所得税2023
  • 银行转账手续费一览表
  • 存货抵债如何做分录
  • 损益类会计科目有哪些
  • 财务费用利息收入的账务处理
  • 免税收入和征税收入怎么做账
  • 银行存款手工账
  • 会计怎么做的
  • sql server连接不上服务器怎么办
  • windows跳转列表是什么
  • win2008 R2 与SP1 PS2无法安装操作系统补丁的解决办法
  • macbookair如何隐藏文件
  • windows8中“同步你的设置”使用介绍(让你的设置自动同步)
  • 如何配置centos7的ip地址
  • win7系统通过wmic命令
  • win10开机后没声音
  • c#在unity的作用
  • cocos2dx 3.0 beta android环境配置
  • windows visual studio openGL开发环境配置
  • activity的生命周期有哪些状态
  • jquery 报表
  • dos help命令
  • python3 bytes类型
  • 安卓下载功能
  • javascript组成
  • 全面解析日本失去的十年
  • js中写html代码
  • 代售门票业务税务处理
  • 公司购买车辆是什么费用
  • 写给税务局的表扬信
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设