首页后端开发PHPPHP常用的信号有哪些,怎样处理信号

PHP常用的信号有哪些,怎样处理信号

时间2024-03-22 14:25:03发布访客分类PHP浏览1000
导读:在这篇文章中我们会学习到关于“PHP常用的信号有哪些,怎样处理信号”的知识,小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望对大家学习或工作能有帮助。下面就请大家跟着小编的思路一起来学习一下吧。...
在这篇文章中我们会学习到关于“PHP常用的信号有哪些,怎样处理信号”的知识,小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望对大家学习或工作能有帮助。下面就请大家跟着小编的思路一起来学习一下吧。
 




php 处理信号简单演示

我们常用的信号

  • kill sigterm sigkill【kill命令】

  • ctrl+c sigint【键盘发出】

  • reload sinhub【一般从终端发出】

  • ctrl+z sigstop 【键盘发出】

  • 定时器 sigalarm【一个进程只能有一个定时时间,多的会被新值覆盖】

sigkill和sinstop 在进行信号处理时,不能被忽略,(处理信号可以有忽略,执行默认 执行用户指定处理)

php信号小例子

?php
        function sighandler($signo){
    
                echo 'just for sigint',"\n";


        }


        function sighandler2($signo){
    

                echo 'just for sigquit',"\n";

        }
    
        declare(ticks=1);
    

        pcntl_signal(SIGINT,"sighandler");
    

        pcntl_signal(SIGQUIT,"sighandler2");
    
        for($i=1;
    $i30;
$i++){
    
                file_put_contents('/home/tbtest/out.txt',"$i"."秒\n");
    
                sleep(1);

        }
    

~

执行结果

root@lyh:/home/tbtest# php sigint.php 
^Cjust for sigint
^Cjust for sigint
^Cjust for sigint
just for sigquit
^Cjust for sigint
^Cjust for sigint
^Z
[1]+  Stopped                 php sigint.php
root@lyh:/home/tbtest# bg
[1]+ php sigint.php &
    
root@lyh:/home/tbtest# fg
php sigint.php
root@lyh:/home/tbtest# cat out.txt 
29秒
root@lyh:/home/tbtest#

关于捕捉sigquit

上面捕捉到了jsut for sigquit 是因为我另外起了一个终端,

root@lyh:~# ps -aux |grep php                                    
root     16385  0.5  1.9 377720 19468 pts/2    S+   15:09   0:00 php sigint.php
root     16390  0.0  0.0  11744   932 pts/0    S+   15:09   0:00 grep --color=auto php
root@lyh:~# kill -s sigquit 16385

ps:pcntl_signal_dispatch 比ticks效率会更高


关于“PHP常用的信号有哪些,怎样处理信号”的内容就介绍到这,感谢各位的阅读,相信大家对PHP常用的信号有哪些,怎样处理信号已经有了进一步的了解。大家如果还想学习更多知识,欢迎关注网络,小编将为大家输出更多高质量的实用文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: PHP常用的信号有哪些,怎样处理信号
本文地址: https://pptw.com/jishu/650618.html
sql注入一般是通过什么输入的? Django环境如何搭建,怎么创建简单的Django

游客 回复需填写必要信息