首页 > Web开发 > 详细

php程序守护进程

时间:2016-02-27 15:06:36      阅读:250      评论:0      收藏:0      [点我收藏+]

php命令程序实习守护进程2种方式:

1.使用nohup

nohup php myprog.php > log.txt &

2.使用程序

function daemonize()
{
$pid = pcntl_fork();
if ($pid == -1)
{
die("fork(1) failed!\n");
}
elseif ($pid > 0)
{
//让由用户启动的进程退出
exit(0);
}

//建立一个有别于终端的新session以脱离终端
posix_setsid();

$pid = pcntl_fork();
if ($pid == -1)
{
die("fork(2) failed!\n");
}
elseif ($pid > 0)
{
//父进程退出, 剩下子进程成为最终的独立进程
exit(0);
}
}

daemonize();
sleep(1000);

上面这个代码首先需要安装pcntl扩展。用上面代码即可实现守护进程化,当你的PHP程序需要转为后台运行时,只需要调用一次封装好的函数daemonize()即可。
注:这里没有实现标准输入输出的重定向。

 

根据端口来查询进程:

直接查看端口被那个进程给占用了,当php守护进程脚本不知道是那个进程,直接可以通过这个命令来查

lsof -i:8060

netstat

 

php程序守护进程

原文:http://www.cnblogs.com/shiwenhu/p/5222885.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!