DatabaseLock
class DatabaseLock extends Lock (View source)
Свойства
| InteractsWithTime |
Свойства
| protected string | $name | Имя блокировки. | from Lock |
| protected int | $seconds | Количество секунд, в течение которых блокировка должна сохраняться. | from Lock |
| protected string | $owner | Идентификатор области действия этой блокировки. | from Lock |
| protected int | $sleepMilliseconds | Количество миллисекунд ожидания перед повторной попыткой получения блокировки при блокировке. | from Lock |
| protected Connection | $connection | Экземпляр подключения к базе данных. | |
| protected string | $table | Имя таблицы базы данных. | |
| protected array | $lottery | Вероятности отсева. |
Методы
| int | secondsUntil(DateTimeInterface|DateInterval|int $delay)
Получить количество секунд до указанной даты и времени. | from InteractsWithTime |
| int | availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить отметку времени "доступно в" в формате Unix. | from InteractsWithTime |
| DateTimeInterface|int | parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразовать его в экземпляр DateTime. | from InteractsWithTime |
| int | currentTime()
Получить текущее системное время в формате Unix. | 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 |
| bool | 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, указывающую, когда блокировка должна истечь. | |
| void | forceRelease()
Освобождает эту блокировку, не учитывая владения. |
Подробное описание методов
protected int secondsUntil(DateTimeInterface|DateInterval|int $delay)
Получить количество секунд до указанной даты и времени.
protected int availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить отметку времени "доступно в" в формате Unix.
protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразовать его в экземпляр DateTime.
protected int currentTime()
Получить текущее системное время в формате Unix.
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)
Попытка получить блокировку.
bool block(int $seconds, callable|null $callback = null)
Попытка получить блокировку на заданное количество секунд.
string owner()
Возвращает текущего владельца блокировки.
protected bool isOwnedByCurrentProcess()
Определяет, разрешена ли эта блокировка на освобождение блокировки в драйвере.
$this betweenBlockedAttemptsSleepFor(int $milliseconds)
Укажите количество миллисекунд, которые необходимо подождать между попытками получения заблокированной блокировки.
protected int expiresAt()
Получить метку времени Unix, указывающую, когда блокировка должна истечь.
void forceRelease()
Освобождает эту блокировку, не учитывая владение.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/7.x/Illuminate/Cache/DatabaseLock.html