CancellableAsyncLock interface
CancellableAsyncLock предоставляет механизм принудительного выполнения задач с помощью одного и того же ключа, выполняемого последовательно.
Ожидающие задачи можно вручную отменить с помощью прерывания или автоматически отменить, достигнув заданного значения времени ожидания.
Методы
| acquire<T>(string, (args: any[]) => Promise<T>, Acquire |
Возвращает обещание, которое разрешает значение, возвращаемое предоставленной функцией задачи.
Для заданного значения Вызов получения можно отменить с помощью
|
Сведения о методе
acquire<T>(string, (args: any[]) => Promise<T>, AcquireLockProperties)
Возвращает обещание, которое разрешает значение, возвращаемое предоставленной функцией задачи.
Для заданного значения key можно вызывать только 1 задачу.
Вызов получения можно отменить с помощью abortSignal.
При отмене обещание будет отклонено с AbortError.
acquireTimeoutInMs также можно предоставить свойствам.
Если время ожидания достигнуто до вызова предоставленного task, обещание будет отклонено с сообщением об ошибке, указывающее время ожидания задачи, чтобы получить блокировку.
function acquire<T>(key: string, task: (args: any[]) => Promise<T>, properties: AcquireLockProperties): Promise<T>
Параметры
- key
-
string
Все acquire вызовы группируются указанными key.
- task
-
(args: any[]) => Promise<T>
Функция, вызываемая после получения блокировки.
- properties
- AcquireLockProperties
Дополнительные свойства для управления поведением acquire.
Возвращаемое значение
Promise<T>