Inheritance | yii\mutex\OracleMutex » yii\mutex\DbMutex » yii\mutex\Mutex » yii\base\Component » yii\base\Object |
---|---|
Implements | yii\base\Configurable |
Available since version | 2.0.10 |
Source Code | https://github.com/yiisoft/yii2/blob/master/framework/mutex/OracleMutex.php |
OracleMutex implements mutex "lock" mechanism via Oracle locks.
Application configuration example:
[ 'components' => [ 'db' => [ 'class' => 'yii\db\Connection', 'dsn' => 'oci:dbname=LOCAL_XE', ... ] 'mutex' => [ 'class' => 'yii\mutex\OracleMutex', 'lockMode' => 'NL_MODE', 'releaseOnCommit' => true, ... ], ], ]
See also:
Property | Type | Description | Defined By |
---|---|---|---|
$autoRelease | boolean | Whether all locks acquired in this process (i.e. local locks) must be released automatically before finishing script execution. | yii\mutex\Mutex |
$behaviors | yii\base\Behavior[] | List of behaviors attached to this component | yii\base\Component |
$db | yii\db\Connection|array|string | The DB connection object or the application component ID of the DB connection. | yii\mutex\DbMutex |
$lockMode | string | Lock mode to be used. | yii\mutex\OracleMutex |
$releaseOnCommit | boolean | Whether to release lock on commit. | yii\mutex\OracleMutex |
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | yii\base\Object |
__clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component |
__construct() | Constructor. | yii\base\Object |
__get() | Returns the value of an object property. | yii\base\Object |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\base\Object |
__set() | Sets value of an object property. | yii\base\Object |
__unset() | Sets an object property to null. | yii\base\Object |
acquire() | Acquires a lock by name. | yii\mutex\Mutex |
attachBehavior() | Attaches a behavior to this component. | yii\base\Component |
attachBehaviors() | Attaches a list of behaviors to the component. | yii\base\Component |
behaviors() | Returns a list of behaviors that this component should behave as. | yii\base\Component |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\Object |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\Object |
className() | Returns the fully qualified name of this class. | yii\base\Object |
detachBehavior() | Detaches a behavior from the component. | yii\base\Component |
detachBehaviors() | Detaches all behaviors from the component. | yii\base\Component |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\base\Component |
getBehavior() | Returns the named behavior object. | yii\base\Component |
getBehaviors() | Returns all behaviors attached to this component. | yii\base\Component |
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\base\Component |
hasMethod() | Returns a value indicating whether a method is defined. | yii\base\Object |
hasProperty() | Returns a value indicating whether a property is defined. | yii\base\Object |
init() | Initializes Oracle specific mutex component implementation. | yii\mutex\OracleMutex |
off() | Detaches an existing event handler from this component. | yii\base\Component |
on() | Attaches an event handler to an event. | yii\base\Component |
release() | Releases acquired lock. This method will return false in case the lock was not found. | yii\mutex\Mutex |
trigger() | Triggers an event. | yii\base\Component |
Method | Description | Defined By |
---|---|---|
acquireLock() | Acquires lock by given name. | yii\mutex\OracleMutex |
releaseLock() | Releases lock by given name. | yii\mutex\OracleMutex |
Constant | Value | Description | Defined By |
---|---|---|---|
MODE_NL | 'NL_MODE' | yii\mutex\OracleMutex | |
MODE_S | 'S_MODE' | yii\mutex\OracleMutex | |
MODE_SS | 'SS_MODE' | yii\mutex\OracleMutex | |
MODE_SSX | 'SSX_MODE' | yii\mutex\OracleMutex | |
MODE_SX | 'SX_MODE' | yii\mutex\OracleMutex | |
MODE_X | 'X_MODE' | Available lock modes | yii\mutex\OracleMutex |
Lock mode to be used.
See also http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/d_lock.htm#CHDBCFDI.
public string $lockMode = self::MODE_X
Whether to release lock on commit.
public boolean $releaseOnCommit = false
Acquires lock by given name.
See also http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/d_lock.htm.
protected boolean acquireLock ( $name, $timeout = 0 ) | ||
---|---|---|
$name | string |
Of the lock to be acquired. |
$timeout | integer |
To wait for lock to become released. |
return | boolean |
Acquiring result. |
Initializes Oracle specific mutex component implementation.
public void init ( ) | ||
---|---|---|
throws | yii\base\InvalidConfigException |
if $db is not Oracle connection. |
Releases lock by given name.
See also http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/d_lock.htm.
protected boolean releaseLock ( $name ) | ||
---|---|---|
$name | string |
Of the lock to be released. |
return | boolean |
Release result. |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-mutex-oraclemutex.html