Browse Source

Autorelease callback.

tags/2.0.0-beta
resurtm 12 years ago
parent
commit
33adfcea91
  1. 3
      extensions/mutex/yii/mutex/Mutex.php

3
extensions/mutex/yii/mutex/Mutex.php

@ -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);
} }

Loading…
Cancel
Save