Mutex ​
- Type
- Class
- Namespace
- craft\mutex
- Inherits
- craft\mutex\Mutex » yii\mutex\Mutex » yii\base\Component » yii\base\BaseObject
- Implements
- yii\base\Configurable
- Uses traits
- craft\mutex\MutexTrait
- Since
- 3.7.30
Public Properties ​
Property | Description |
---|---|
autoRelease | boolean – Whether all locks acquired in this process (i.e. local locks) must be released automatically before finishing script execution. |
behaviors | yii\base\Behavior – List of behaviors attached to this component. |
mutex | yii\mutex\Mutex, array, string – The internal mutex driver to use. |
namePrefix | string – A string prefixed to every lock name. |
mutex
​
- Type
- yii\mutex\Mutex, array, string
- Default value
null
The internal mutex driver to use.
This can be set from config/app.php
like so:
php
return [
'components' => [
'mutex' => [
'mutex' => 'yii\redis\Mutex',
],
],
];
Public Methods ​
Method | Description |
---|---|
__call() | Calls the named method which is not a class method. |
__clone() | This method is called after the object is created by cloning an existing one. |
__construct() | Constructor. |
__get() | Returns the value of a component property. |
__isset() | Checks if a property is set, i.e. defined and not null. |
__set() | Sets the value of a component property. |
__unset() | Sets a component property to be null. |
acquire() | Acquires a lock by name. |
attachBehavior() | Attaches a behavior to this component. |
attachBehaviors() | Attaches a list of behaviors to the component. |
behaviors() | Returns a list of behaviors that this component should behave as. |
canGetProperty() | Returns a value indicating whether a property can be read. |
canSetProperty() | Returns a value indicating whether a property can be set. |
className() | Returns the fully qualified name of this class. |
detachBehavior() | Detaches a behavior from the component. |
detachBehaviors() | Detaches all behaviors from the component. |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. |
getBehavior() | Returns the named behavior object. |
getBehaviors() | Returns all behaviors attached to this component. |
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. |
hasMethod() | Returns a value indicating whether a method is defined. |
hasProperty() | Returns a value indicating whether a property is defined for this component. |
init() | Initializes the Mutex component. |
isAcquired() | Checks if a lock is acquired by the current process. |
off() | Detaches an existing event handler from this component. |
on() | Attaches an event handler to an event. |
release() | Releases acquired lock. This method will return false in case the lock was not found. |
releaseQueuedLocks() | Releases any locks that are waiting on the DB transaction to complete. |
trigger() | Triggers an event. |
init()
​
Initializes the Mutex component.
Protected Methods ​
Method | Description |
---|---|
acquireLock() | This method should be extended by a concrete Mutex implementations. Acquires lock by name. |
releaseLock() | This method should be extended by a concrete Mutex implementations. Releases lock by given name. |
acquireLock()
​
This method should be extended by a concrete Mutex implementations. Acquires lock by name.
Arguments ​
$name
(string) – Of the lock to be acquired.$timeout
(integer) – Time (in seconds) to wait for the lock to be released.
Returns ​
boolean – Acquiring result.
releaseLock()
​
This method should be extended by a concrete Mutex implementations. Releases lock by given name.
Arguments ​
$name
(string) – Of the lock to be released.
Returns ​
boolean – Release result.