ReadableStreamBYOBReader:releaseLock() 方法

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

注意:此功能在 Web Workers 中可用。

ReadableStreamBYOBReader 接口的 releaseLock() 方法会释放读取器对流的锁定。解锁后,读取器将不再处于活动状态。

如果解锁时关联的流发生错误,读取器将显示错误;否则,读取器将显示已关闭。

如果在读取器仍有待处理的读取请求时释放了读取器的锁定,则读取器的 ReadableStreamBYOBReader.read() 方法返回的 Promise 会立即以 TypeError 拒绝。未读取的块将保留在流的内部队列中,稍后可以通过获取新的读取器来读取。

语法

js
releaseLock()

参数

无。

返回值

无(undefined)。

异常

TypeError

如果源对象不是 ReadableStreamBYOBReader,则会抛出此错误。

示例

下面是一个简单的示例。在创建流的读取器时会立即创建一个锁定。

js
const reader = stream.getReader({ mode: "byob" });
reader.releaseLock();

规范

规范
Streams
# ref-for-byob-reader-release-lock②

浏览器兼容性

另见