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 keyfourni.
- 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>