Mutex

Type
Class
Namespace
craft\mutex
Inherits
craft\mutex\Mutex » yii\mutex\Mutex (opens new window) » yii\base\Component (opens new window) » yii\base\BaseObject (opens new window)
Implements
yii\base\Configurable (opens new window)
Uses traits
craft\mutex\MutexTrait
Since
3.7.30

View source (opens new window)

# Public Properties

Property Description
autoRelease (opens new window) boolean (opens new window) – Whether all locks acquired in this process (i.e. local locks) must be released automatically before finishing script execution.
behaviors (opens new window) yii\base\Behavior (opens new window) – List of behaviors attached to this component.
mutex yii\mutex\Mutex (opens new window), array (opens new window), string (opens new window) – The internal mutex driver to use.
namePrefix string (opens new window) – A string prefixed to every lock name.

# mutex

Type
yii\mutex\Mutex (opens new window), array (opens new window), string (opens new window)
Default value
null

The internal mutex driver to use.

This can be set from config/app.php like so:

return [
    'components' => [
        'mutex' => [
            'mutex' => 'yii\redis\Mutex',
        ],
    ],
];

View source (opens new window)

# Public Methods

Method Description
__call() (opens new window) Calls the named method which is not a class method.
__clone() (opens new window) This method is called after the object is created by cloning an existing one.
__construct() (opens new window) Constructor.
__get() (opens new window) Returns the value of a component property.
__isset() (opens new window) Checks if a property is set, i.e. defined and not null.
__set() (opens new window) Sets the value of a component property.
__unset() (opens new window) Sets a component property to be null.
acquire()
attachBehavior() (opens new window) Attaches a behavior to this component.
attachBehaviors() (opens new window) Attaches a list of behaviors to the component.
behaviors() (opens new window) Returns a list of behaviors that this component should behave as.
canGetProperty() (opens new window) Returns a value indicating whether a property can be read.
canSetProperty() (opens new window) Returns a value indicating whether a property can be set.
className() (opens new window) Returns the fully qualified name of this class.
detachBehavior() (opens new window) Detaches a behavior from the component.
detachBehaviors() (opens new window) Detaches all behaviors from the component.
ensureBehaviors() (opens new window) Makes sure that the behaviors declared in behaviors() (opens new window) are attached to this component.
getBehavior() (opens new window) Returns the named behavior object.
getBehaviors() (opens new window) Returns all behaviors attached to this component.
hasEventHandlers() (opens new window) Returns a value indicating whether there is any handler attached to the named event.
hasMethod() (opens new window) Returns a value indicating whether a method is defined.
hasProperty() (opens new window) Returns a value indicating whether a property is defined for this component.
init() Initializes the Mutex component.
isAcquired()
off() (opens new window) Detaches an existing event handler from this component.
on() (opens new window) Attaches an event handler to an event.
release()
releaseQueuedLocks() Releases any locks that are waiting on the DB transaction to complete.
trigger() (opens new window) Triggers an event.

# init()

Initializes the Mutex component.

View source (opens new window)

# 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.

View source (opens new window)

Arguments

Returns

boolean (opens new window) – Acquiring result.

# releaseLock()

This method should be extended by a concrete Mutex implementations. Releases lock by given name.

View source (opens new window)

Arguments

Returns

boolean (opens new window) – Release result.