Delen via


CancellableAsyncLock interface

CancellableAsyncLock biedt een mechanisme voor het afdwingen van taken die gebruikmaken van dezelfde sleutel die serieel moet worden uitgevoerd.

Taken die in behandeling zijn, kunnen handmatig worden geannuleerd via een abortSignal of automatisch worden geannuleerd door een opgegeven time-outwaarde te bereiken.

Methoden

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

Retourneert een belofte die wordt omgezet in de waarde die wordt geretourneerd door de opgegeven taakfunctie. Slechts één taak kan tegelijk worden aangeroepen voor een bepaalde key waarde.

Een acquire-oproep kan worden geannuleerd via een abortSignal. Als deze wordt geannuleerd, wordt de belofte geweigerd met een AbortError.

acquireTimeoutInMs kan ook worden verstrekt aan eigenschappen. Als de time-out is bereikt voordat de opgegeven task wordt aangeroepen, wordt de belofte geweigerd met een fout waarin wordt aangegeven dat er een time-out optreedt voor de taak die wacht op het verkrijgen van een vergrendeling.

Methodedetails

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

Retourneert een belofte die wordt omgezet in de waarde die wordt geretourneerd door de opgegeven taakfunctie. Slechts één taak kan tegelijk worden aangeroepen voor een bepaalde key waarde.

Een acquire-oproep kan worden geannuleerd via een abortSignal. Als deze wordt geannuleerd, wordt de belofte geweigerd met een AbortError.

acquireTimeoutInMs kan ook worden verstrekt aan eigenschappen. Als de time-out is bereikt voordat de opgegeven task wordt aangeroepen, wordt de belofte geweigerd met een fout waarin wordt aangegeven dat er een time-out optreedt voor de taak die wacht op het verkrijgen van een vergrendeling.

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

Parameters

key

string

Alle acquire oproepen worden gegroepeerd op de opgegeven key.

task

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

De functie die moet worden aangeroepen zodra de vergrendeling is verkregen.

properties
AcquireLockProperties

Aanvullende eigenschappen om het gedrag van acquirete bepalen.

Retouren

Promise<T>