1. Go to this page and download the library: Download deminy/ninja-mutex library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
deminy / ninja-mutex example snippets
NinjaMutex\Lock\MemcacheLock;
use NinjaMutex\Mutex;
$memcache = new Memcache();
$memcache->connect('127.0.0.1', 11211);
$lock = new MemcacheLock($memcache);
$mutex = new Mutex('very-critical-stuff', $lock);
if ($mutex->acquireLock(1000)) {
// Do some very critical stuff
// and release lock after you finish
$mutex->releaseLock();
} else {
throw new Exception('Unable to gain lock!');
}
NinjaMutex\Lock\MemcacheLock;
use NinjaMutex\MutexFabric;
$memcache = new Memcache();
$memcache->connect('127.0.0.1', 11211);
$lock = new MemcacheLock($memcache);
$mutexFabric = new MutexFabric('memcache', $lock);
if ($mutexFabric->get('very-critical-stuff')->acquireLock(1000)) {
// Do some very critical stuff
// and release lock after you finish
$mutexFabric->get('very-critical-stuff')->releaseLock();
} else {
throw new Exception('Unable to gain lock for very critical stuff!');
}
if ($mutexFabric->get('also-very-critical-stuff')->acquireLock(0)) {
// Do some also very critical stuff
// and release lock after you finish
$mutexFabric->get('also-very-critical-stuff')->releaseLock();
} else {
throw new Exception('Unable to gain lock for also very critical stuff!');
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.