haskel / mutex
Mutex Component
Installs: 6
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/haskel/mutex
This package is auto-updated.
Last update: 2025-09-14 23:17:03 UTC
README
The Mutex component provides the ability to manage locks while accessing the resource at the same time.
Installation
composer require haskel/mutex
Usage
Basic usage
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);
To release everytime if exception throws
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); }
Try to acquire within 20 seconds
use Haskel\Component\Mutex\MutexManager; use Haskel\Component\Mutex\Mutex\PlainMutex; $mutexManager = new MutexManager(); $mutex = new PlainMutex('SOME_UNIQUE_STRING'); $mutexManager->acquire($mutex, 20); // .......