Класс yii\mutex\PgsqlMutex
| Наследование | yii\mutex\PgsqlMutex » yii\mutex\DbMutex » yii\mutex\Mutex » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Доступно с версии | 2.0.8 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/mutex/PgsqlMutex.php |
PgsqlMutex реализует механизм блокировки "замка" через блокировки PgSQL.
Пример конфигурации приложения:
[
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'pgsql:host=127.0.0.1;dbname=demo',
]
'mutex' => [
'class' => 'yii\mutex\PgsqlMutex',
],
],
]
См. также yii\mutex\Mutex.
Публичные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $autoRelease | boolean | Являются ли все блокировки, полученные в этом процессе (т.е. локальные блокировки), должны быть автоматически освобождены перед завершением выполнения скрипта. | yii\mutex\Mutex |
| $behaviors | yii\base\Behavior[] | Список присоединенных к этому компоненту поведений | yii\base\Component |
| $db | yii\db\Connection|массив|строка | Объект подключения к БД или идентификатор компонента приложения для подключения к БД. | yii\mutex\DbMutex |
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | yii\base\Object |
| __clone() | Этот метод вызывается после создания объекта путем клонирования существующего. | yii\base\Component |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства объекта. | yii\base\Object |
| __isset() | Проверяет, установлено ли свойство, т. е. определено и не равно null. | yii\base\Object |
| __set() | Устанавливает значение свойства объекта. | yii\base\Object |
| __unset() | Устанавливает свойство объекта в значение null. | yii\base\Object |
| acquire() | Получает блокировку по имени. | yii\mutex\Mutex |
| attachBehavior() | Присоединяет поведение к этому компоненту. | yii\base\Component |
| attachBehaviors() | Присоединяет список поведений к компоненту. | yii\base\Component |
| behaviors() | Возвращает список поведений, в соответствии с которыми должен действовать этот компонент. | yii\base\Component |
| canGetProperty() | Возвращает значение, указывающее, можно ли прочитать свойство. | yii\base\Object |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Object |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| detachBehavior() | Отсоединяет поведение от компонента. | yii\base\Component |
| detachBehaviors() | Отсоединяет все поведения от компонента. | yii\base\Component |
| ensureBehaviors() | Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. | yii\base\Component |
| getBehavior() | Возвращает объект именованного поведения. | yii\base\Component |
| getBehaviors() | Возвращает все присоединенные к этому компоненту поведения. | yii\base\Component |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли обработчик, присоединенный к именованному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство. | yii\base\Object |
| init() | Инициализирует реализацию компонента блокировки PgSQL. | yii\mutex\PgsqlMutex |
| off() | Отсоединяет существующий обработчик событий от этого компонента. | yii\base\Component |
| on() | Присоединяет обработчик событий к событию. | yii\base\Component |
| release() | Освобождает полученную блокировку. Этот метод вернет false в случае, если блокировка не найдена. | yii\mutex\Mutex |
| trigger() | Вызывает событие. | yii\base\Component |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| acquireLock() | Получает блокировку по заданному имени. | yii\mutex\PgsqlMutex |
| releaseLock() | Освобождает блокировку по заданному имени. | yii\mutex\PgsqlMutex |
Подробное описание методов
acquireLock() защищенный метод
Получает блокировку по заданному имени.
См. также http://www.postgresql.org/docs/9.0/static/functions-admin.html.
| защищенный boolean acquireLock ( $name, $timeout = 0 ) | ||
|---|---|---|
| $name | строка |
Имени блокировки. |
| $timeout | целое число |
Для ожидания, пока блокировка не будет освобождена. |
| return | boolean |
Результат получения. |
init() публичный метод
Инициализирует реализацию компонента блокировки PgSQL.
| публичный void init ( ) | ||
|---|---|---|
| throws | yii\base\InvalidConfigException |
если $db не является подключением PgSQL. |
releaseLock() защищенный метод
Освобождает блокировку по заданному имени.
См. также http://www.postgresql.org/docs/9.0/static/functions-admin.html.
| защищенный boolean releaseLock ( $name ) | ||
|---|---|---|
| $name | строка |
Имени блокировки. |
| return | boolean |
Результат освобождения. |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-mutex-pgsqlmutex.html