AsyncDisposableStack
Baseline Ограниченная доступность
Эта функция не является Baseline, поскольку она не работает в некоторых из наиболее широко используемых браузеров.
Объект AsyncDisposableStack представляет собой стек асинхронных освободителей, которые будут выполнены при освобождении самого стека. Функции освободителей выполняются в обратном порядке регистрации с гарантированной обработкой ошибок. Вызов его метода move() передаст ответственность за вызов текущих зарегистрированных освободителей новому AsyncDisposableStack и предотвратит регистрацию каких-либо дополнительных освободителей.
См. DisposableStack для общей информации об использовании стеков освободителей.
Конструктор
-
AsyncDisposableStack() - Создает новый объект
AsyncDisposableStack.
Свойства экземпляра
Эти свойства определены на AsyncDisposableStack.prototype и используются всеми экземплярами AsyncDisposableStack.
-
AsyncDisposableStack.prototype.constructor - Конструктор, который создал экземпляр объекта. Для экземпляров
AsyncDisposableStackначальным значением является конструкторAsyncDisposableStack. -
AsyncDisposableStack.prototype.disposed - Только для чтения. Возвращает
true, еслиAsyncDisposableStackбыл освобожден, илиfalse, если нет. -
AsyncDisposableStack.prototype[Symbol.toStringTag] - Начальным значением свойства
[Symbol.toStringTag]является строка"AsyncDisposableStack". Это свойство используется вObject.prototype.toString().
Методы экземпляра
-
AsyncDisposableStack.prototype.adopt() - Регистрирует значение, не реализующее протокол асинхронного освобождения, в стеке, предоставляя пользовательскую функцию освободителя.
-
AsyncDisposableStack.prototype.disposeAsync() - Освобождает этот стек, вызывая все зарегистрированные в нем освободители в обратном порядке регистрации.
-
AsyncDisposableStack.prototype.defer() - Принимает функцию обратного вызова, которая будет вызвана при освобождении стека.
-
AsyncDisposableStack.prototype.move() - Создает новый экземпляр
AsyncDisposableStack, который содержит те же освободители, что и этот стек, а затем помечает этот стек как освобожденный, не вызывая никаких освободителей. -
AsyncDisposableStack.prototype.use() - Регистрирует в стеке значение, реализующее протокол асинхронного освобождения.
-
AsyncDisposableStack.prototype[Symbol.asyncDispose] - Псевдоним для метода
disposeAsync().
Спецификации
Совместимость с браузерами
| Desktop | Mobile | Server | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
AsyncDisposableStack |
134 |
134 |
141 |
119 |
preview |
134 |
141 |
88 |
No |
29.0 |
134 |
No |
1.3.0 |
2.2.10 |
24.0.0 |
@@asyncDispose |
134 |
134 |
141 |
119 |
preview |
134 |
141 |
88 |
No |
29.0 |
134 |
No |
1.3.0 |
2.2.10 |
24.0.0 |
AsyncDisposableStack |
134 |
134 |
141 |
119 |
preview |
134 |
141 |
88 |
No |
29.0 |
134 |
No |
1.3.0 |
2.2.10 |
24.0.0 |
adopt |
134 |
134 |
141 |
119 |
preview |
134 |
141 |
88 |
No |
29.0 |
134 |
No |
1.3.0 |
2.2.10 |
24.0.0 |
defer |
134 |
134 |
141 |
119 |
preview |
134 |
141 |
88 |
No |
29.0 |
134 |
No |
1.3.0 |
2.2.10 |
24.0.0 |
disposeAsync |
134 |
134 |
141 |
119 |
preview |
134 |
141 |
88 |
No |
29.0 |
134 |
No |
1.3.0 |
2.2.10 |
24.0.0 |
disposed |
134 |
134 |
141 |
119 |
preview |
134 |
141 |
88 |
No |
29.0 |
134 |
No |
1.3.0 |
2.2.10 |
24.0.0 |
move |
134 |
134 |
141 |
119 |
preview |
134 |
141 |
88 |
No |
29.0 |
134 |
No |
1.3.0 |
2.2.10 |
24.0.0 |
use |
134 |
134 |
141 |
119 |
preview |
134 |
141 |
88 |
No |
29.0 |
134 |
No |
1.3.0 |
2.2.10 |
24.0.0 |
См. также
- Polyfill
AsyncDisposableStackвcore-js - Управление ресурсами JavaScript
Symbol.asyncDisposeawait usingDisposableStack
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/AsyncDisposableStack