ReadableStreamDefaultReader: releaseLock() 方法

Baseline 廣泛可用 *

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2020 年 1 月⁩ 起,所有主流瀏覽器均已支援。

* 此特性的某些部分可能存在不同級別的支援。

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

releaseLock() 方法是 ReadableStreamDefaultReader 介面的方法,用於釋放讀取器對流的鎖定。

如果釋放鎖定後,關聯的流處於錯誤狀態,則讀取器將 subsequently 以相同的方式顯示錯誤;否則,讀取器將顯示為已關閉。

如果在讀取器仍有待處理的讀取請求時釋放了讀取器的鎖定,則由讀取器的 ReadableStreamDefaultReader.read() 方法返回的 Promise 將立即以 TypeError 被拒絕。未讀取的資料塊將保留在流的內部佇列中,之後可以透過獲取新讀取器來讀取。

語法

js
releaseLock()

引數

無。

返回值

無(undefined)。

異常

TypeError

如果源物件不是 ReadableStreamDefaultReader,則會丟擲此異常。

示例

js
function fetchStream() {
  const reader = stream.getReader();

  // …

  reader.releaseLock();

  // …
}

規範

規範
Streams
# ref-for-default-reader-release-lock②

瀏覽器相容性

另見