定制 diego.sorrentino/lock 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

diego.sorrentino/lock

最新稳定版本:1.0.1

Composer 安装命令:

composer require diego.sorrentino/lock

包简介

Lock system for procedures

README 文档

README

Including this library you can create a simple lock for your cron'd scripts that must be executed just one at time.

You can set an expire time (in minutes) for the process and, on next run, the lock-library checks if the previous script is expired, and must be killed, or this execution have to wait.

Install and usage

Install via composer:

$ composer require diego.sorrentino/lock

and autoload and use in your script:

require_once __DIR__ . '/vendor/autoload.php';

$lock = new Lock('processname', './lock', 10);
if ( ! $lock->acquired() )
	exit();

//do something

$lock->release();

The library try to create the ./lock/ directory, with the file processname.lock containing the PID of the process, safe for 10 minutes. If next script runs before 10 minute, simply terminate, otherwise kill the PID contained in ./lock/processname.lock

Technical documentation

You can find documentation, automatically created by PHPDocumentor here: http://diego.sorrentino.gitpages.rm.ingv.it/lock/phpdoc

Test and Deploy

Tests are realized using PHPUnit. You can find code coverage here: http://diego.sorrentino.gitpages.rm.ingv.it/lock/coverage

Contributing

If you want to contribute, please use pull requests. To get a best integration, please code using Test Driven Development (TDD) and Calisthenic Programming.

Authors and acknowledgment

Diego Sorrentino, Istituto Nazionale di Geofisica e Vulcanologia, https://www.ingv.it/organizzazione/chi-siamo/personale/#922

License

GPL v3

Project status

Development in progress

统计信息

  • 总下载量: 244
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0-or-later
  • 更新时间: 2024-05-13