php多进程pcntl学习(一)
pcntl在windows下无法使用,linux编译php时加上参数--enable-pcntl 即可。第一次使用pcntl模块,遇到了一些坑也慢慢填上了,这里简单记录下。
1. 子进程之间变量无法共享。
2. 子进程完成,记得加上exit(),子进程退出,否则会有坑。
1 <?php 2 $pid_dir = __DIR__.'/pid_files/'; 3 4 5 for ($i=0;$i<3;$i++){ 6 $pid = pcntl_fork(); 7 if ($pid == -1){ 8 var_dump('fork failed'); 9 } 10 11 if ($pid == 0){ 12 //子进程代码 ,返回当前进程id 13 $pid = posix_getgid(); 14 //返回当前父进程标识 15 $ppid = posix_getppid(); 16 $r = rand(0,100); //随机数 17 //创建一个文件 18 //file_put_contents($pid_dir."fork_child_process_{$i}_{$ppid}_{$pid}_{$r}",$e); 19 touch($pid_dir."fork_child_process_{$i}_{$ppid}_{$pid}_{$r}"); 20 //注意这里子进程完成,记得加上exit(),子进程退出,否则会有坑 22 exit(); 23 } 24 } 25 26 27 $pid = posix_getpid(); 28 $ppid = posix_getppid(); 29 $r = rand(0,100); //随机数 30 touch("$pid_dir/fork_process_pid_{$ppid}_{$pid}_$r"); 31 32 33 sleep(1000); // ps aux | grep php
参考: https://segmentfault.com/a/1190000003503671
php多进程pcntl学习(一)相关推荐
- python多进程线程学习_python进程、线程的学习心得
什么是多线程竞争? 线程不是独立的,同一个进程里的线程,线程间的数据是共享的,多线程操作时,容易造成数据的混乱,线程不安全. 如何解决? 互斥锁. 好处:能够保证某段关键代码执行时,只有一个线程操作, ...
- python 多进程使用总结
python中的多进程主要使用到 multiprocessing 这个库.这个库在使用 multiprocessing.Manager().Queue时会出问题,建议大家升级到高版本python,如2 ...
- 进军IT与安全行业:推荐学习路线图
进军IT与安全行业:推荐学习路线图--转载于其它论坛博客 IT是一个生机勃勃的行业,不少年轻人选择IT作为自己的职业规划与选项,希望能够在IT行业里挖掘自己的潜力,奔一个好的前程.但很多朋 ...
- 对PHP并发、多进程、多线程、异步处理、分布式系统的一些了解
目录 并发 基本概念 PHP并发模型 多进程 基本概念 进程 多进程 并发多任务 任务调度 PHP实现多进程 PCNTL PHP-FPM Swoole 多线程 基本概念 线程 多线程 PHP实现多线程 ...
- IT安全行业学习路线图
进军IT与安全行业:推荐学习路线图--转载于其它论坛博客 IT是一个生机勃勃的行业,不少年轻人选择IT作为自己的职业规划与选项,希望能够在IT行业里挖掘自己的潜力,奔一个好的前程.但很多朋友发现,IT ...
- python tkinter 表格_python学习笔记(Tkinter编程利用Treeview实现表格自动更新)
博主今天总结这段时间抽空写的一个GUI编程项目 功能是查看本地打印机队列,可选择指定队列重新打印 直接上图 UI设计包括3个区域左上方,右上方和下方列表区域 使用网格grid方法来分配位置 下面是界面 ...
- 基于对抗生成网络的滚动轴承故障检测方法
人工智能技术与咨询 点击蓝字 · 关注我们 来源:<人工智能与机器人研究> ,作者华丰 关键词: 不平衡工业时间序列:异常检测:生成对抗网络:滚动轴承数据 关注微信公众号:人工智能技术与咨 ...
- php pcntl 多进程学习
1.捕获子进程退出(监听SIGCHLD信号,然后调用 pcntl_wait 函数) declare(ticks=1);pcntl_signal(SIGCHLD, "sig_handler&q ...
- Python学习笔记:多线程和多进程(转1)
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
最新文章
- MERGE INTO 解决大数据量 10w 更新缓慢的问题
- 美国的工资、俄罗斯的妻子、英国的房子、中国的饮食
- 网络:TCP协议3次握手4次挥手
- Tomcat配置Web虚拟目录
- centos 一键安装ftp 配置_CentOS快速搭建FTP(初级-四步)
- 【Keras】学习笔记(一)
- 如何将exe文件在linux下执行,如何在Linux系统下查找可执行文件
- 感知哈希算法(Perceptual hash algorithm)的OpenCV实现
- 【转载】SQL SERVER 游标
- android 串口调试助手_Arduino入门 第八节-串口通讯(基础篇)
- 7-14 与数据库相连
- iphone开发常用编码
- mysql 查询语法基础_入门MySQL——查询语法练习
- 博为峰Java技术文章 ——JavaSE Swing焦点事件的处理
- abb变频器如何拷贝_关于ACS800变频器拷贝参数.pdf
- 程序化交易高手的交易心得 分享~
- 【惯性导航姿态仪】 04 -Mini AHRS 姿态解算说明
- python脚本案例-python+adb命令实现自动刷视频脚本案例
- OpenCV C++案例实战十八《抖音特效——“蓝线挑战”》
- VS2012编译和调用gdal