怎么在php中创建一个守护进程

  介绍

这篇文章给大家介绍怎么在php中创建一个守护进程,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

前提要安装有pcntl扩展,可通过<代码> php - m>

& lt; php ?   class  Daemon  {   private 才能;pidfile美元;   function 才能;__construct (), {   ,,,这个→美元pidfile =,目录名(__FILE__) # 39;公司/daemontest.pid& # 39;;   ,,}   private 才能;function  startDeamon (), {   ,,,if  (file_exists ($ this→pidfile)), {   ,,,,,echo “, file  $ this→pidfile 存在。\ n";   ,,,,,退出();   ,,,}   ,,,pid 美元;=,pcntl_fork ();   ,,,if  (pid 美元;==,1),{   ,,,,,死(& # 39;could  not 叉# 39;);   ,,,},else  if  ($ pid), {   ,,,,,echo  & # 39; start 好# 39;;   ,,,,,退出($ pid);   ,,,},{else    ,,,//,断开连接,我方表示歉意,孩子   ,,,,,用file_put_contents ($ this→pidfile,, getmypid ());   ,,,,,return  getmypid ();   ,,,}   ,,}   private 才能;function 开始(){   ,,,pid 美元;=,$ this→startDeamon ();   ,,,while (真实),{   ,,,,,用file_put_contents(目录名(__FILE__) # 39;公司/用法# 39;,,日期(& # 39;Y-m-d  H:我:& # 39;),,FILE_APPEND);   ,,,,,睡眠(2);   ,,,}   ,,}   private 才能;function 停止(){   ,,,if  (file_exists ($ this→pidfile)), {   ,,,,,pid 美元;=,file_get_contents(这比美元;pidfile);   ,,,,,posix_kill ($ pid, 9);   ,,,,,分开($ this→pidfile);   ,,,}   ,,}   public 才能;function 运行($ argv), {   ,,,if ($ argv[1],==, & # 39;开始# 39;),{   ,,,,,这个→美元开始();   ,,,}else 如果($ argv[1],==, & # 39;停止# 39;),{   ,,,,,这个→美元停止();   还有,,,}{   ,,,,,echo  & # 39; param 错误# 39;;   ,,,}   ,,}   }   $ deamon =, new 守护进程();   虚拟光驱→美元($ argv);运行

启动

php  deamon.php 开始

关闭

php  deamon.php 停止

关于怎么在php中创建一个守护进程就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

怎么在php中创建一个守护进程