• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

yii2.0console执行php守护进程

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
//该方法只需执行一次
public function actionIndex(){


$pid =pcntl_fork();//在当前进程中生成一个新的子进程
//$pid会有三种形式 $pid==-1生成子进程失败 $pid==0生成子进程成功 $pid>0在父进程中
if($pid == -1) {
return false;
} elseif($pid > 0) {
return false;
}

posix_setsid();//将当前进程选举成为进程组的leader
$pid = pcntl_fork();//为什么要重新运行pcntl_fork(子进程脱离父进程后会有系统托管,所以需要重新执行pcntl_fork)

if($pid == -1) {
return false;
} elseif($pid > 0) {
return false;
}


chdir("/");
umask(0);
fclose(STDIN);//关闭所有打开的文件指针
fclose(STDOUT);//
fclose(STDERR);

$i = 0;

while(1) {
$i++;
if($i >= 9) {
\Yii::$app->db->createCommand('select 1')->execute();
$i = 0;
}
$this->a=$this->a+1;

echo $this->a;

file_put_contents("test.log",$this->a,FILE_APPEND);

sleep(3);
}


}

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
php上传图片类发布时间:2022-07-10
下一篇:
搭建php环境,更换织梦服务器发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap