mirror of
https://github.com/yiisoft/yii2.git
synced 2025-08-24 04:50:31 +08:00
Autorelease callback.
This commit is contained in:
@ -34,10 +34,11 @@ abstract class Mutex extends Component
|
|||||||
{
|
{
|
||||||
if ($this->autoRelease) {
|
if ($this->autoRelease) {
|
||||||
$referenceHolder = new stdClass();
|
$referenceHolder = new stdClass();
|
||||||
|
$referenceHolder->mutex = &$this;
|
||||||
$referenceHolder->locks = &$this->_locks;
|
$referenceHolder->locks = &$this->_locks;
|
||||||
register_shutdown_function(function ($ref) {
|
register_shutdown_function(function ($ref) {
|
||||||
foreach ($ref->locks as $lock) {
|
foreach ($ref->locks as $lock) {
|
||||||
$this->release($lock);
|
$ref->mutex->release($lock);
|
||||||
}
|
}
|
||||||
}, $referenceHolder);
|
}, $referenceHolder);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user