位置: 编程技术 - 正文
推荐整理分享PHP:pcntl_signal()的用法_PCNTL函数,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
(PHP 4 >= 4.1.0, PHP 5)
pcntl_signal — 安装一个信号处理器
说明 bool pcntl_signal ( int $signo , callback $handler [, bool $restart_syscalls = true ] )函数pcntl_signal()为signo指定的信号安装一个新 的信号处理器。
参数signo
信号编号。
handler信号处理器可以是用户创建的函数或方法的名字,也可以是系统常量 SIG_IGN(译注:忽略信号处理程序)或SIG_DFL(默认信号处理程序).
Note:
注意当你使用一个对象方法的时候,该对象的引用计数回增加使得它在你改变为其他处理或脚本结束之前是持久存在的。
restart_syscalls指定当信号到达时系统调用重启是否可用。(译注:经查资料,此参数意为系统调用被信号打断时,系统调用是否从 开始处重新开始,但根据
返回值成功时返回 TRUE, 或者在失败时返回 FALSE。
更新日志版本 说明 4.3.0 增加参数restart_syscalls。 4.3.0 对象方法可以作为回调被使用。 4.3.0 PCNTL现在使用了ticks作为信号处理的回调机制,ticks在速度上远远超过了之前的处理机制。 这个变化与“用户ticks”遵循了相同的语义。您可以使用declare() 语句在程序中指定允许发生回调的位置。这使得我们对异步事件处理的开销最小化。在编译PHP时 启用pcntl将始终承担这种开销,不论您的脚本中是否真正使用了pcntl。 PHP 4.3.0使用ticks作为信号处理回调机制,这比以前的机制快了很多。这个变化与 "用户ticks" 遵循了相同的语义。您可以使用declare() 语句在程序中指定允许发生回调的位置。
范例
Example #1 pcntl_signal()示例
<?php//使用ticks需要PHP4.3.0以上版本declare(ticks=1);//信号处理函数functionsig_handler($signo){switch($signo){ 参见pcntl_fork() - 在当前进程当前位置产生分支(子进程)。译注:fork是创建了一个子进程,父进程和子进程 都从fork的位置开始向下继续执行,不同的是父进程执行过程中,得到的fork返回值为子进程 号,而子进程得到的是0。 pcntl_waitpid() - 等待或返回fork的子进程状态
PHP:pcntl_wifsignaled()的用法_PCNTL函数 pcntl_wifsignaled(PHP4=4.1.0,PHP5)pcntl_wifsignaled检查子进程状态码是否代表由于某个信号而中断说明boolpcntl_wifsignaled(int$status)检查子进程是否是由于某个未捕获
PHP:pcntl_wexitstatus()的用法_PCNTL函数 pcntl_wexitstatus(PHP4=4.1.0,PHP5)pcntl_wexitstatus返回一个中断的子进程的返回代码说明intpcntl_wexitstatus(int$status)返回一个中断的子进程的返回代码。这个函数仅在
PHP:pcntl_wifexited()的用法_PCNTL函数 pcntl_wifexited(PHP4=4.1.0,PHP5)pcntl_wifexited检查状态代码是否代表一个正常的退出。说明boolpcntl_wifexited(int$status)检查子进程状态代码是否代表正常退出。参数st
标签: PHP:pcntl_signal()的用法_PCNTL函数
本文链接地址:https://www.jiuchutong.com/biancheng/284714.html 转载请保留说明!友情链接: 武汉网站建设