最新公告
  • 欢迎加入中国站长资源网团队,精品资源持续增加!立即加入我们
  • PHP进程守护方法详解

    一 、使用nohup

    nohup php myprog.php > log.txt &

    这里就实现了守护进程化。

    单独执行 php myprog.php,当按下ctrl+c时就会中断程序执行,会kill当前进程以及子进程。

    php myprog.php &,这样执行程序虽然也是转为后台运行,实际上是依赖终端的,当用户退出终端时进程就会被杀掉。

    二、使用PHP代来实现

    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);

    用上面代码可实现守护进程化,当你的PHP程序需要转为后台运行时,只需要调用一次封装好的函数dAEmonize()即可。

    注:这里没有实现标准输入输出的重定向。

    如果遇到资源下载失效,请复制当前文章链接类型客服处理!
    中国站长资源网 » PHP进程守护方法详解

    常见问题FAQ

    【点击查看】免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    【点击查看】提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    【点击查看】开通终身至尊下载源码 “不完整” 或 “不能用” 怎么办?
    非常抱歉,你有权利告诉本站,但是本站有选择处理或者不处理的权力,如无法接受请不要开通本站会员。
    【点击查看】开通终身会员能下载全站资源码?
    可以100%下载全站源码资源的,除部分失效资源,失效的可以联系客服尝试恢复。

    发表评论