haskel / mutex
互斥组件
dev-master / 0.1.x-dev
2019-06-18 10:23 UTC
This package is auto-updated.
Last update: 2024-09-14 20:55:57 UTC
README
互斥组件提供在访问资源的同时管理锁的能力。
安装
composer require haskel/mutex
使用
基本使用
use Haskel\Component\Mutex\MutexManager; use Haskel\Component\Mutex\Mutex\PlainMutex; $mutexManager = new MutexManager(); $mutex = new PlainMutex('SOME_UNIQUE_STRING'); $mutexManager->acquire($mutex); //some actions $mutexManager->release($mutex);
每次异常抛出时释放
use Haskel\Component\Mutex\MutexManager; use Haskel\Component\Mutex\Mutex\PlainMutex; $mutexManager = new MutexManager(); $mutex = new PlainMutex('SOME_UNIQUE_STRING'); $mutexManager->acquire($mutex); //some actions try { //some actions } finally { $mutexManager->release($mutex); }
尝试在20秒内获取锁
use Haskel\Component\Mutex\MutexManager; use Haskel\Component\Mutex\Mutex\PlainMutex; $mutexManager = new MutexManager(); $mutex = new PlainMutex('SOME_UNIQUE_STRING'); $mutexManager->acquire($mutex, 20); // .......