php进程守护进程,php 多进程实现守护进程的实例代码
/**
* 入口函數
* 將此文件保存為 ProcessOpera.php
* 在terminal中運行 /usr/local/php/bin/php ProcessOpera.php &
* 查看進程 ps aux|grep php
* modify by www.jbxue.com
*/
ProcessOpera("runCode", array(), 8);
/**
* run Code
*/
function runCode($opt = array()) {
//在守護進程中運行的代碼
}
/**
* $func為子進程執行具體事物的函數名稱
* $opt為$func的參數 數組形式
* $pNum 為fork的子進程數量
*/
function ProcessOpera($func, $opts = array(), $pNum = 1) {
while(true) {
$pid = pcntl_fork();
if($pid == -1) {
exit("pid fork error");
}
if($pid) {
static $execute = 0;
$execute++;
if($execute >= $pNum) {
pcntl_wait($status);
$execute--;
}
} else {
while(true) {
//somecode
$func($opts);
sleep(1);
}
exit(0);
}
}
}
?>
總結
以上是生活随笔為你收集整理的php进程守护进程,php 多进程实现守护进程的实例代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php从大到小排列数字,php输入几个数
- 下一篇: 动态规划算法php,php算法学习之动态