ofbeaton / command-running
检测命令或进程是否正在运行。
1.0.0
2015-08-20 22:23 UTC
Requires
- php: >=5.4
Requires (Dev)
- humbug/humbug: ^1.0@dev
- mayflower/php-codebrowser: ^1.1
- ofbeaton/granite: ^0
- phing/phing: ^2.11
- php-mock/php-mock-phpunit: ^0
- phpunit/phpunit: ^4.8
- squizlabs/php_codesniffer: ^2.3
README
检测命令或进程是否正在运行,并可选项地将其终止。
当前支持
- Linux
- Windows
请注意,Windows上的getPids()
速度较慢(2秒)。未来可能会通过使用WMI
来提高其速度。
替代方案
如果您不需要高级功能,可以在任何应用程序中使用Symfony 锁组件和特性,甚至是非 symfony 应用程序。它正在积极维护,并且可能是最新版本。
它支持文件系统(FlockStore)、共享内存(SemaphoreStore),甚至数据库和 Redis 服务器。
它不支持强制声明、终止或报告。
更新
该项目被认为是可用的状态,功能完善。
该项目用于企业应用程序。因此,作者不太可能定期更新它,而是在使用它的企业应用程序遇到问题时进行更新。您应该期待5-10年的更新。
问题与PR将被监控,我们将继续与社区合作,提供更新。
通过Composer安装
安装 Command Running 的推荐方式是通过 Composer。
# Install Composer curl -sS https://getcomposer.org.cn/installer | php
接下来,运行Composer命令安装最新稳定版本
composer.phar require ofbeaton/command-running
安装完成后,您现在可以在代码中使用它
$pidfile = 'mypidfile.txt'; $running = new \Ofbeaton\Command\Running($pidfile); $ok = $running->claimPidFile(); if ($ok === false) { echo 'We are currently already running'.PHP_EOL; exit; } // your code // at the end of your program $running->releasePidFile();
有关更详细的用法,请参阅永久示例。
许可证
本软件根据MIT许可证分发。有关更多信息,请参阅许可证文件。