php多进程学习
来源:互联网 发布:舞蹈培训网络推广方案 编辑:程序博客网 时间:2024/05/19 15:22
php多进程学习
需要扩展:pcntl库
基础知识:进程运行,多进程并行
具体函数可以看参考:http://php.net/manual/zh/book.pcntl.php
下面直接给出栗子。
该栗子纯粹为了用于理解多进程并行而写,cli下运行,仔细研究和分析输出结果。
<?php
$arr = array();
for($i = 0;$i<=1;$i++)
{
echo $i."\n";
$pid = pcntl_fork();//当前进程下,创建一个子进程。
echo getmypid().'_'.$pid.'_'.$i."\n";
$arr[$i] = $pid;
if($pid == -1){
//执行失败返回-1,这里敲对应的交互代码
//do something
}else if($pid){
//父进程执行返回子进程id
//父进程逻辑代码
//do something
}else{
//子进程执行返回0
//子进程逻辑代码
//do something
die; //这里的die很重要,如果不die,部分自进程继续循环会继续创建更多子进程(孙进程)。
}
}
var_dump($arr);
echo "\n\n";
foreach($arr as $k=>$v)
{
var_dump(pcntl_waitpid($v,$s,WUNTRACED));//这里是对僵尸进程的回收和销毁
//这里是为了测试部分函数,仅此而已。
var_dump(pcntl_wifexited($s));
var_dump(pcntl_wexitstatus($s));
var_dump(pcntl_wifsignaled($s));
var_dump(pcntl_wifstopped($s));
}
备注:本文就是为了给自己做下记录,如有不恰当之处,请各路大牛指出,好让后辈们学习。
- php多进程学习
- php 多进程开发学习笔记
- Socket学习 - PHP+Socket多进程处理请求学习
- PHP多进程编程
- php多进程
- PHP多进程编程
- PHP的多进程
- php的多进程
- PHP的多进程
- PHP多进程编程
- php cli多进程
- PHP多进程
- php多进程实现
- PHP的多进程
- PHP多进程编程
- PHP 多进程
- php 多进程思路
- php 多进程处理
- 深度学习FPGA实现基础知识15(Matlab图像处理“卷积”运算)
- CodeForces - 417A(思维题)
- CodeForces - 417B (思维题)
- CodeForces - 417E(随机数)
- CodeForces - 420A (字符对称问题)
- php多进程学习
- 辗转相除法的证明
- Codeforces 424A (思维题)
- CodeForces - 424B (贪心算法)
- 算法的重要性
- Codeforces 424C(异或)
- CodeForces - 426A(排序)
- CodeForces - 426B(对称图形)
- CodeForces - 427A (警察和罪犯 思维题)