Spec-Zone.ru › Laravel 10

ConcurrencyLimiterBuilder

class ConcurrencyLimiterBuilder (View source)

Traits

InteractsWithTime

Properties

Connection $connection

Соединение с Redis.

string $name

Имя блокировки.

int $maxLocks

Максимальное количество сущностей, которые могут удерживать блокировку одновременно.

int $releaseAfter

Количество секунд для поддержания блокировки до её автоматического освобождения.

int $timeout

Время ожидания, пока будет доступна блокировка.

int $sleep

Количество миллисекунд ожидания между попытками получения блокировки.

Methods

int secondsUntil(DateTimeInterface|DateInterval|int $delay)

Получить количество секунд до заданной даты и времени.

from InteractsWithTime
int availableAt(DateTimeInterface|DateInterval|int $delay = 0)

Получить отметку времени (UNIX timestamp) доступности.

from InteractsWithTime
DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)

Если заданное значение является интервалом, преобразовать его в экземпляр DateTime.

from InteractsWithTime
int currentTime()

Получить текущее системное время в формате UNIX timestamp.

from InteractsWithTime
void __construct(Connection $connection, string $name)

Создать новый экземпляр билдера.

$this limit(int $maxLocks)

Установить максимальное количество блокировок, которые могут быть получены в течение временного интервала.

$this releaseAfter(int $releaseAfter)

Установить количество секунд, после которых блокировка будет освобождена.

$this block(int $timeout)

Установить время блокировки, пока блокировка не станет доступной.

$this sleep(int $sleep)

Количество миллисекунд ожидания между попытками получения блокировки.

mixed then(callable $callback, callable $failure = null)

Выполнить заданный обратный вызов, если блокировка получена, в противном случае вызвать обратный вызов ошибки.

Details

protected int secondsUntil(DateTimeInterface|DateInterval|int $delay)

Получить количество секунд до заданной даты и времени.

Parameters

DateTimeInterface|DateInterval|int $delay

Return Value

int

protected int availableAt(DateTimeInterface|DateInterval|int $delay = 0)

Получить отметку времени (UNIX timestamp) доступности.

Parameters

DateTimeInterface|DateInterval|int $delay

Return Value

int

protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)

Если заданное значение является интервалом, преобразовать его в экземпляр DateTime.

Parameters

DateTimeInterface|DateInterval|int $delay

Return Value

DateTimeInterface|int

protected int currentTime()

Получить текущее системное время в формате UNIX timestamp.

Return Value

int

void __construct(Connection $connection, string $name)

Создать новый экземпляр билдера.

Parameters

Connection $connection
string $name

Return Value

void

$this limit(int $maxLocks)

Установить максимальное количество блокировок, которые могут быть получены в течение временного интервала.

Parameters

int $maxLocks

Return Value

$this

$this releaseAfter(int $releaseAfter)

Установить количество секунд, после которых блокировка будет освобождена.

Parameters

int $releaseAfter

Return Value

$this

$this block(int $timeout)

Установить время блокировки, пока блокировка не станет доступной.

Parameters

int $timeout

Return Value

$this

$this sleep(int $sleep)

Количество миллисекунд ожидания между попытками получения блокировки.

Parameters

int $sleep

Return Value

$this

mixed then(callable $callback, callable $failure = null)

Выполнить заданный обратный вызов, если блокировка получена, в противном случае вызвать обратный вызов ошибки.

Параметры

callable $callback
callable $failure

Значение возврата

mixed

Исключения

LimiterTimeoutException

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/10.x/Illuminate/Redis/Limiters/ConcurrencyLimiterBuilder.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API