CancellableAsyncLock interface
CancellableAsyncLock zapewnia mechanizm wymuszania wykonywania zadań przy użyciu tego samego "klucza", który ma być wykonywany szeregowo.
Oczekujące zadania można anulować ręcznie za pośrednictwem elementu abortSignal lub automatycznie anulować przez osiągnięcie podanej wartości limitu czasu.
Metody
| acquire<T>(string, (args: any[]) => Promise<T>, Acquire |
Zwraca obietnicę, która jest rozpoznawana jako wartość zwracana przez podaną funkcję zadania.
W danym Połączenie pozyskiwania można anulować za pośrednictwem
|
Szczegóły metody
acquire<T>(string, (args: any[]) => Promise<T>, AcquireLockProperties)
Zwraca obietnicę, która jest rozpoznawana jako wartość zwracana przez podaną funkcję zadania.
W danym key wartości można wywołać tylko 1 zadanie.
Połączenie pozyskiwania można anulować za pośrednictwem abortSignal.
Jeśli zostanie anulowana, obietnica zostanie odrzucona przy użyciu AbortError.
acquireTimeoutInMs można również podać właściwości.
Jeśli zostanie osiągnięty limit czasu przed wywołaniem podanej task, obietnica zostanie odrzucona z komunikatem o błędzie z informacją, że zadanie przekroczyło limit czasu oczekiwania na uzyskanie blokady.
function acquire<T>(key: string, task: (args: any[]) => Promise<T>, properties: AcquireLockProperties): Promise<T>
Parametry
- key
-
string
Wszystkie wywołania acquire są pogrupowane według podanego key.
- task
-
(args: any[]) => Promise<T>
Funkcja, która ma zostać wywołana po uzyskaniu blokady.
- properties
- AcquireLockProperties
Dodatkowe właściwości do kontrolowania zachowania acquire.
Zwraca
Promise<T>