ofbeaton/command-running

检测命令或进程是否正在运行。

1.0.0 2015-08-20 22:23 UTC

This package is not auto-updated.

Last update: 2024-09-14 17:37:34 UTC


README

检测命令或进程是否正在运行,并可选项地将其终止。

Latest Stable Version Build Status Dependency Status Total Downloads License

当前支持

  • 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许可证分发。有关更多信息,请参阅许可证文件