ReadableStreamBYOBReader: releaseLock() メソッド

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

releaseLock()ReadableStreamBYOBReader インターフェイスのメソッドで、ストリーム上のリーダーのロックを解除します。 ロックを解除すると、リーダーはアクティブではなくなります。

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

保留中の読み込みリクエストがある間にリーダーのロックが解除された場合、リーダーの ReadableStreamBYOBReader.read() メソッドによって返されるプロミスは、直ちに TypeError で拒否されます。 未読のチャンクはストリームの内部キューに残り、後で新しいリーダーを取得することで読み取ることができます。

構文

js
releaseLock()

引数

なし。

返値

なし (undefined)。

例外

TypeError

ソースオブジェクトが ReadableStreamBYOBReader ではない場合に発生します。

簡単な例を下記に示します。 ストリーム上にリーダーが作成されると同時にロックが作成されます。

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

仕様書

Specification
Streams
# ref-for-byob-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.

関連情報