php实现多进程和关闭进程
一、php实现多进程
PHP有个pcntl_fork的函数可以实现多进程,但要加载pcntl拓展,而且只有在linux下才能编译这个拓展.
先代码:
<?php
$arr = ['30000000','500000000',['7000000000','8000000']];
foreach($arr as $key=>$item){
$pid[$key] = pcntl_fork();
if ($pid[$key] == -1) {
die('could not fork');
} else if (!$pid[$key]) {
if(is_array($item)){
foreach($item as $k=>$value) {
$pid[$k] = pcntl_fork();
if(!$pid[$k]){
for($j=0;$j<$value;$j++){
$con1 = file_get_contents('./'.$value.'.txt');
file_put_contents('./'.$value.'.txt',$con1.'#'.$j);
}
exit;
}
}
}else{
for($i=0;$i<$item;$i++){
$con = file_get_contents('./'.$item.'.txt');
file_put_contents('./'.$item.'.txt',$con.'#'.$i);
}
}
exit;
}
}
把这个写在test.php文件里。
在Linux中执行: php -f test.php
查询进程:ps -ef | gerp test 就会查到4个进程

关闭进程:kill -9 pid
$pid[$k] = pcntl_fork();//这里的$pid[$k] 就是子进程的进程ID 参考url:http://www.jb51.net/article/58575.htm 二、php关闭进程
<?php
exec("kill -9 30699");
写在test2.php 里
在Linux中执行: php -f test.php
查询进程就会发现 30699的进程被关闭了
参考url:https://zhidao.baidu.com/question/395877542327855005.html 注意:php实现多进程或关闭进程,都需要Linux用户的权限,如果是用web(浏览器上),那需要给web端执行的权限。我这里用root执行Linux语句,所以有权限。
php实现多进程和关闭进程的更多相关文章
- Node.js - 阿里Egg的多进程模型和进程间通讯
前言 最近用Egg作为底层框架开发项目,好奇其多进程模型的管理实现,于是学习了解了一些东西,顺便记录下来.文章如有错误, 请轻喷 为什么需要多进程 伴随科技的发展, 现在的服务器基本上都是多核cpu的 ...
- Python 多进程编程之 进程间的通信(在Pool中Queue)
Python 多进程编程之 进程间的通信(在Pool中Queue) 1,在进程池中进程间的通信,原理与普通进程之间一样,只是引用的方法不同,python对进程池通信有专用的方法 在Manager()中 ...
- Python多进程并发操作进程池Pool
目录: multiprocessing模块 Pool类 apply apply_async map close terminate join 进程实例 multiprocessing模块 如果你打算编 ...
- 0704 Process继承实现多进程、Pool进程池,进程间通过队列通信,Pool实现多进程实现复制文件
通过继承的方式,实现Process多进程 from multiprocessing import Process import time class MyNewProcess(Process): de ...
- wpf 异常处理和关闭进程
using System; using System.Collections.Generic; using System.Configuration; using System.Data; using ...
- Dos命令查看端口占用及关闭进程
1. 查看端口占用 在windows命令行窗口下执行: netstat -aon|findstr "8080" TCP 127.0.0.1:80 0.0.0.0:0 LISTENI ...
- Centos下查看占用端口并关闭进程方法
1.查看端口占用情况:netstat –tlnp (加p可以看到是哪个进程占用了端口); 也可以用grep查找对应的被占用的端口,键入netstat –tlnp | grep 3306可以看到PI ...
- innosetup安装之前关闭进程
InnoSetup覆盖安装的时候可能会因为源程序正在运行而安装失败,以下脚本能够关闭原运行进程. [code] // 安装前检查关闭**进程 function InitializeSetup():Bo ...
- hadoop 关闭进程时报错no 进程 to stop
前两天和朋友李天王吃饭的时候,聊到了一个hadoop的运维的很简单问题,感觉很有意思,以前也没有注意过,现在加以重现和整理. 感谢李天王的分享.... 翻看了yarn-deamon.sh st ...
随机推荐
- 3173. 【GDOI2103模拟3.17】扫雷游戏(搜索 + 剪枝)
Problem 给出一个类似扫雷的游戏,有\(num\)个数字,求至少有多少个雷. Data constraint \(n,m\le 15,num\le 15\) Solution 好搜索啊. 现讲一 ...
- (BFS) leetcode 279. Perfect Squares
Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 1 ...
- LINQ To SQL 语法及实例大全【转】
转http://blog.csdn.net/pan_junbiao/article/details/7015633 LINQ to SQL语句(1)之Where Where操作 适用场景:实现过滤,查 ...
- makefile $@, $^, $<, $? 表示的意义
ref:https://www.cnblogs.com/gamesun/p/3323155.html $@ 表示目标文件$^ 表示所有的依赖文件$< 表示第一个依赖文件$? 表示比目标还 ...
- DirectX11 With Windows SDK--07 添加光照与常用几何模型
前言 对于3D游戏来说,合理的光照可以让游戏显得更加真实.接下来会介绍光照的各种分量,以及常见的光照模型.除此之外,该项目还用到了多个常量缓冲区,因此还会提及HLSL的常量缓冲区打包规则以及如何设置多 ...
- How to learn PDE (怎么学偏微分方程)
To learn PDE, you need some knowledge of physics (to build up the intuition), solid training of anal ...
- Centos7 安装 python2.7
Centos7 安装 python 2.7.15 和 pip 1.先安装 GCC 包,如果没安装 GCC包 就输入以下命令行安装: (*注:以下记得使用 su 权限) yum install gcc ...
- idea一款颜值很高的theme
在idea的plugins搜索theme,能看到一款人气值超高的插件,下载使用了确实很漂亮!
- POJ 2398 Toy Storage(叉积+二分)
Description Mom and dad have a problem: their child, Reza, never puts his toys away when he is finis ...
- 提升Tesseract-OCR输出的质量
图片处理 修改比例(Rescaling) 二值化(Binarisation) 去除噪点(Noise Removal) 旋转/偏移校正(Rotation / Deskewing) 边界(Borders) ...