sunaoka/process-guard-php

该库旨在防止脚本多个实例的执行。

v1.0.0 2024-05-24 03:02 UTC

This package is auto-updated.

Last update: 2024-09-05 06:01:31 UTC


README

Latest License PHP Test codecov

该库旨在防止脚本多个实例的执行。

如果在批处理中使用且脚本已经在运行,所有后续尝试执行可以终止,直到当前进程完成。

安装

composer require sunaoka/process-guard-php

基本用法

use Sunaoka\ProcessGuard\Drivers\FileDriver;
use Sunaoka\ProcessGuard\LockFactory;

$driver = new FileDriver();
$factory = new LockFactory($driver);

$lock = $factory->create('Preventing Multiple Instances', ttl: 60.0);
if ($lock->acquire() === false) {
    // already running
    exit;
}

// You can do some processing

$lock->release();