AudioContext.close() - Web API 接口参考 编辑
AudioContext
的close()
方法可以关闭audio context,同时释放占用的所有系统资源。
关闭的context不能用来创建新节点,但可以解码音频数据,创建buffer等等
该函数不会自动释放所有用AudioContext创建的对象
,除非其他引用也都已经解除了。但是,它会强制释放所有可能阻止其它AudioContexts被创建或使用
的系统音频资源。挂起audio context中音频时间的进度,并停止对音频数据的处理。所有的AudioContext创建/阻塞资源都被释放后,返回的Promise
才会被释放。如果在一个OfflineAudioContext
上调用该方法,则会抛出INVALID_STATE_ERR
异常。
语法
var audioCtx = new AudioContext();
audioCtx.close().then(function() { ... });
返回值
一个 resolve void值得 Promise
。
例子
下面这段代码是AudioContext states demo (直接运行)中的,点击停止按钮调用close()
。promise释放后,回到初始状态。
stopBtn.onclick = function() {
audioCtx.close().then(function() {
startBtn.removeAttribute('disabled');
susresBtn.setAttribute('disabled','disabled');
stopBtn.setAttribute('disabled','disabled');
});
}
规范
规范 | 状态 | 注释 |
---|---|---|
Web Audio API close() | Working Draft |
浏览器兼容性
We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | 43.0 | 40.0 (40.0) | 未实现 | ? | ? |
Feature | Android | Android Webview | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Android |
---|---|---|---|---|---|---|---|---|
Basic support | 未实现 | 未实现 | ? | ? | ? | ? | ? | 未实现 |
另见
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论