ReadableStreamDefaultReader: releaseLock() メソッド

releaseLock()ReadableStreamDefaultReader インターフェイスのメソッドで、ストリームのリーダーのロックを解除します。

ロックを解除したときに関連するストリームにエラーが発生した場合、リーダーはその後同様にエラーが発生したようになります。 そうでない場合、リーダーは閉じた状態になります。

リーダーのロックは、保留中の読み取りリクエストが残っている間、つまり、リーダーの ReadableStreamDefaultReader.read() メソッドによって返されたプロミスが終了していない場合、解除できません。 これにより、TypeError が発生します。

構文

js
releaseLock()

引数

なし。

返値

なし (undefined)。

例外

TypeError

ソースオブジェクトが ReadableStreamDefaultReader でないか、読み取り要求が保留中です。

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

  // ...

  reader.releaseLock();

  // ...
}

仕様書

Specification
Streams
# ref-for-default-reader-release-lock②

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
releaseLock
releaseLock() rejects pending read requests

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
See implementation notes.

関連情報