AsyncDisposableStack.prototype[Symbol.asyncDispose]()
利用可能性は限定的
この機能はベースラインではありません。最も広く使用されているブラウザーの一部で動作しません。
AsyncDisposableStack インスタンスの [Symbol.asyncDispose]() メソッドは、非同期破棄プロトコルを実装し、await using とともに使用されたときにオブジェクトを破棄できるようにします。これは、disposeAsync() メソッドのエイリアスです。
構文
js
asyncDisposableStack[Symbol.asyncDispose]()
引数
なし。
返値
なし (undefined)。
例
>await using によるスタックの宣言
Symbol.asyncDispose メソッドは、 await using 宣言内で自動的に呼び出されることを意図しています。
js
async function doSomething() {
await using disposer = new AsyncDisposableStack();
const resource = disposer.use(new Resource());
resource.doSomething();
// 関数の終了直前にディスポーザーが破棄され、
// それによりリソースも破棄されます
}
仕様書
| 仕様書 |
|---|
| ECMAScript Async Explicit Resource Management> # sec-asyncdisposablestack.prototype-@@asyncDispose> |