Sdílet prostřednictvím


CancellableAsyncLock interface

CancellableAsyncLock poskytuje mechanismus pro vynucení úloh pomocí stejného klíče, který se má spustit sériově.

Čekající úkoly je možné ručně zrušit prostřednictvím abortSignal nebo automaticky zrušit dosažením zadané hodnoty časového limitu.

Metody

acquire<T>(string, (args: any[]) => Promise<T>, AcquireLockProperties)

Vrátí příslib, který se přeloží na hodnotu vrácenou zadanou funkcí úkolu. Pro danou key hodnotu lze vyvolat pouze 1 úkol najednou.

Získání volání lze zrušit prostřednictvím abortSignal. Pokud dojde ke zrušení, příslib bude odmítnut s AbortError.

acquireTimeoutInMs lze také poskytnout vlastnostem. Pokud dojde k dosažení časového limitu před vyvolání poskytnutého task, příslib se odmítne s chybou s informací o vypršení časového limitu úkolu, který čeká na získání zámku.

Podrobnosti metody

acquire<T>(string, (args: any[]) => Promise<T>, AcquireLockProperties)

Vrátí příslib, který se přeloží na hodnotu vrácenou zadanou funkcí úkolu. Pro danou key hodnotu lze vyvolat pouze 1 úkol najednou.

Získání volání lze zrušit prostřednictvím abortSignal. Pokud dojde ke zrušení, příslib bude odmítnut s AbortError.

acquireTimeoutInMs lze také poskytnout vlastnostem. Pokud dojde k dosažení časového limitu před vyvolání poskytnutého task, příslib se odmítne s chybou s informací o vypršení časového limitu úkolu, který čeká na získání zámku.

function acquire<T>(key: string, task: (args: any[]) => Promise<T>, properties: AcquireLockProperties): Promise<T>

Parametry

key

string

Všechna acquire volání jsou seskupována podle poskytnutého key.

task

(args: any[]) => Promise<T>

Funkce, která se má vyvolat po získání zámku.

properties
AcquireLockProperties

Další vlastnosti pro řízení chování acquire.

Návraty

Promise<T>