AsyncDisposableStack : méthode defer()
Disponibilité limitée
Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.
Vous voulez une meilleure prise en charge pour cette fonctionnalité ? Dites-nous pourquoi.
La méthode defer() des instances de AsyncDisposableStack prend une fonction de rappel qui est appelée et attendue lors de la libération de la pile.
Voir DisposableStack.prototype.defer() pour des informations générales sur la méthode defer().
Syntaxe
defer(onDispose)
Paramètres
onDispose-
Une fonction appelée lors de la libération de la pile. Elle ne reçoit aucun argument et peut retourner une promesse qui est attendue.
Valeur de retour
Aucune (undefined).
Exceptions
TypeError-
Levée si
onDisposen'est pas une fonction. ReferenceError-
Levée si la pile a déjà été libérée.
Exemples
>Utiliser la méthode defer()
Un cas d'usage de defer() est d'effectuer une action non liée à la libération de ressources lors de la sortie de portée, comme écrire un message de journalisation.
async function faireQuelqueChose() {
await using gestionnaire = new AsyncDisposableStack();
gestionnaire.defer(async () => {
await fs.writeFile(
"journal.txt",
"Toutes les ressources ont été libérées avec succès",
);
});
// Autre code qui réclame et libère plus de données
}
Spécifications
| Spécification |
|---|
| ECMAScript Async Explicit Resource Management> # sec-asyncdisposablestack.prototype.defer> |