mkraemer / react-pcntl
ReactPHP 的 PCNTL 绑定
v3.0.0
2017-07-24 19:56 UTC
Requires
- php: >=5.4
- ext-pcntl: *
- evenement/evenement: ^3.0 || ^2.0
- react/event-loop: 0.4.*
Requires (Dev)
- phpunit/phpunit: ^4.8
- satooshi/php-coveralls: ^1.0
This package is not auto-updated.
Last update: 2024-09-14 13:45:37 UTC
README
自 ReactPHP v0.5 版本起 event-loop 提供了原生 信号处理支持。
React-PCNTL
React PHP 的基本 PCNTL 绑定。
安装
通过 composer 安装此库是最好的方法
{ "require": { "mkraemer/react-pcntl": "^3.0.*" } }
此库依赖于 PCNTL 扩展。 注意:此库的版本 2 需要 PHP >= 5.4。如果您正在使用 PHP 5.3,请使用 1.0.*
版本
{ "require": { "mkraemer/react-pcntl": "1.0.*" } }
用法
此库提供了一个 PCNTL 类,它接受一个事件循环和可选的计时器间隔作为构造函数参数,其中 PCNTL 信号应该被读取。初始化类后,您可以使用 on() 方法将事件监听器注册到 PCNTL 信号。
$loop = React\EventLoop\Factory::create(); $pcntl = new MKraemer\ReactPCNTL\PCNTL($loop); $pcntl->on(SIGTERM, function () { // Clear some queue // Write syslog // Do ALL the stuff echo 'Bye'.PHP_EOL; die(); }); $pcntl->on(SIGINT, function () { echo 'Terminated by console'.PHP_EOL; die(); }); echo 'Started as PID '.getmypid().PHP_EOL; $loop->run();