AsyncDisposableStack
AsyncDisposableStack 对象表示一个 async disposers 堆栈,当堆栈本身被释放时,将按注册顺序的逆序执行这些 disposers。disposer 函数的执行具有严格的错误处理保证。调用其 move() 方法会将当前已注册 disposers 的调用责任转移到一个新的 AsyncDisposableStack 对象,并阻止注册任何其他 disposers。
有关使用 disposable stacks 的一般信息,请参阅 DisposableStack。
构造函数
AsyncDisposableStack()-
创建一个新的
AsyncDisposableStack对象。
实例属性
这些属性定义在 AsyncDisposableStack.prototype 上,并由所有 AsyncDisposableStack 实例共享。
AsyncDisposableStack.prototype.constructor-
创建了实例对象的构造函数。对于
AsyncDisposableStack实例,初始值是AsyncDisposableStack构造函数。 AsyncDisposableStack.prototype.disposed-
只读。如果
AsyncDisposableStack已被释放,则返回true;否则返回false。 AsyncDisposableStack.prototype[Symbol.toStringTag]-
Symbol.toStringTag属性的初始值是字符串"AsyncDisposableStack"。此属性用于Object.prototype.toString()。
实例方法
AsyncDisposableStack.prototype.adopt()-
通过提供自定义的 disposer 函数,将未实现 async disposable 协议的值注册到堆栈中。
AsyncDisposableStack.prototype.disposeAsync()-
通过按注册顺序的逆序调用所有已注册的 disposers 来释放此堆栈。
AsyncDisposableStack.prototype.defer()-
接受一个回调函数,该函数将在堆栈被释放时调用。
AsyncDisposableStack.prototype.move()-
创建一个新的
AsyncDisposableStack实例,该实例包含与此堆栈相同的 disposers,然后将此堆栈标记为已释放,而不调用任何 disposers。 AsyncDisposableStack.prototype.use()-
将实现 async disposable 协议的值注册到堆栈中。
AsyncDisposableStack.prototype[Symbol.asyncDispose]-
disposeAsync()方法的别名。
规范
| 规范 |
|---|
| ECMAScript 异步显式资源管理 # sec-asyncdisposablestack-objects |
浏览器兼容性
加载中…