Замок базы данных
класс DatabaseLock наследуется от Замка (Просмотреть исходный код)
Трейты
| Взаимодействие со временем |
Свойства
| protected string | $name | Имя замка. | из Замка |
| protected int | $seconds | Количество секунд, в течение которых замок должен сохраняться. | из Замка |
| protected string | $owner | Идентификатор области действия этого замка. | из Замка |
| protected int | $sleepMilliseconds | Количество миллисекунд ожидания перед повторной попыткой получения замка во время блокировки. | из Замка |
| protected Соединение | $connection | Экземпляр подключения к базе данных. | |
| protected string | $table | Имя таблицы базы данных. | |
| protected array | $lottery | Вероятности удаления. |
Методы
| int | secondsUntil(DateTimeInterface|DateInterval|int $delay)
Получить количество секунд до указанной даты DateTime. | from InteractsWithTime |
| int | availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить отметку времени в формате UNIX timestamp для "доступно в" (available at). | from InteractsWithTime |
| DateTimeInterface|int | parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразовать его в экземпляр DateTime. | from InteractsWithTime |
| int | currentTime()
Получить текущее системное время как отметку времени в формате UNIX timestamp. | from InteractsWithTime |
| void | __construct(Connection $connection, string $table, string $name, int $seconds, string|null $owner = null, array $lottery = [2, 100])
Создать новый экземпляр блокировки. | |
| bool | acquire()
Попытаться получить блокировку. | |
| bool | release()
Освободить блокировку. | |
| string | getCurrentOwner()
Возвращает значение владельца, записанное в драйвер для этой блокировки. | |
| mixed | get(callable|null $callback = null)
Попытаться получить блокировку. | from Lock |
| mixed | block(int $seconds, callable|null $callback = null)
Попытаться получить блокировку на заданное количество секунд. | from Lock |
| string | owner()
Возвращает текущего владельца блокировки. | from Lock |
| bool | isOwnedByCurrentProcess()
Определяет, разрешена ли текущему процессу освободить блокировку в драйвере. | from Lock |
| $this | betweenBlockedAttemptsSleepFor(int $milliseconds)
Укажите количество миллисекунд, которые необходимо подождать между попытками получения заблокированной блокировки. | from Lock |
| int | expiresAt()
Получить отметку времени в формате UNIX timestamp, указывающую, когда блокировка должна истечь. | |
| void | forceRelease()
Освобождает эту блокировку, не обращая внимания на владение. | |
| string | getConnectionName()
Получить имя подключения к базе данных, используемого для управления блокировкой. |
Подробности
protected int secondsUntil(DateTimeInterface|DateInterval|int $delay)
Получить количество секунд до заданного DateTime.
protected int availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить отметку времени «доступно в» в формате UNIX timestamp.
protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразовать его в экземпляр DateTime.
protected int currentTime()
Получить текущее системное время в формате UNIX timestamp.
void __construct(Connection $connection, string $table, string $name, int $seconds, string|null $owner = null, array $lottery = [2, 100])
Создать новый экземпляр блокировки.
bool acquire()
Попытка получить блокировку.
bool release()
Освободить блокировку.
protected string getCurrentOwner()
Возвращает значение владельца, записанное в драйвер для этой блокировки.
mixed get(callable|null $callback = null)
Попытка получить блокировку.
mixed block(int $seconds, callable|null $callback = null)
Попытка получить блокировку на заданное количество секунд.
string owner()
Возвращает текущего владельца блокировки.
protected bool isOwnedByCurrentProcess()
Определяет, разрешено ли этому замку освободить блокировку в драйвере.
$this betweenBlockedAttemptsSleepFor(int $milliseconds)
Указывает количество миллисекунд, которое необходимо подождать между попытками получения заблокированной блокировки.
protected int expiresAt()
Получить метку времени UNIX, указывающую, когда блокировка должна истечь.
void forceRelease()
Освобождает эту блокировку, не учитывая владение.
string getConnectionName()
Получить имя подключения к базе данных, используемого для управления блокировкой.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/9.x/Illuminate/Cache/DatabaseLock.html