CancellableAsyncLock interface
CancellableAsyncLock fournit un mécanisme permettant de forcer les tâches à l’aide de la même « clé » à exécuter en série.
Les tâches en attente peuvent être annulées manuellement par le biais d’un abandonSignal ou automatiquement annulées par atteindre une valeur de délai d’expiration fournie.
Méthodes
acquire<T>(string, (args: any[]) => Promise<T>, Acquire |
Retourne une promesse qui se résout à la valeur retournée par la fonction de tâche fournie.
Une seule tâche peut être appelée à la fois pour une valeur de Un appel d’acquisition peut être annulé via un
|
Détails de la méthode
acquire<T>(string, (args: any[]) => Promise<T>, AcquireLockProperties)
Retourne une promesse qui se résout à la valeur retournée par la fonction de tâche fournie.
Une seule tâche peut être appelée à la fois pour une valeur de key
donnée.
Un appel d’acquisition peut être annulé via un abortSignal
.
En cas d’annulation, la promesse sera rejetée avec un AbortError
.
acquireTimeoutInMs
pouvez également être fourni aux propriétés.
Si le délai d’expiration est atteint avant l’appel du task
fourni, la promesse est rejetée avec une erreur indiquant que la tâche a expiré en attente d’acquérir un verrou.
function acquire<T>(key: string, task: (args: any[]) => Promise<T>, properties: AcquireLockProperties): Promise<T>
Paramètres
- key
-
string
Tous les appels acquire
sont regroupés par le key
fourni.
- task
-
(args: any[]) => Promise<T>
Fonction à appeler une fois le verrou acquis.
- properties
- AcquireLockProperties
Propriétés supplémentaires pour contrôler le comportement de acquire
.
Retours
Promise<T>