Web/API/ReadableStreamDefaultReader/releaseLock

From Get docs


The releaseLock() method of the ReadableStreamDefaultReader interface releases the reader's lock on the stream.

If the associated stream is errored when the lock is released, the reader will appear errored in that same way subsequently; otherwise, the reader will appear closed.

A reader’s lock cannot be released while it still has a pending read request, i.e., if a promise returned by the reader’s ReadableStreamDefaultReader.read() method has not finished. This will result in a TypeError being thrown.

Syntax

readableStreamDefaultReader.releaseLock();

Parameters

None.

Return value

undefined.

Exceptions

TypeError
The source object is not a ReadableStreamDefaultReader, or a read request is pending.

Examples

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

  reader.releaseLock()

  ...
}

Specifications

Specification Status Comment
StreamsThe definition of 'releaseLock()' in that specification. Living Standard Initial definition.

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet

releaseLock

Experimental'

Chrome

?

Edge

?

Firefox Full support 65


Full support 65


Full support 57

Disabled'

Disabled' From version 57: this feature is behind the dom.streams.enabled preference (needs to be set to true) and the javascript.options.streams preference (needs to be set to true). To change preferences in Firefox, visit about:config.

IE

No support No

Opera

?

Safari

?

WebView Android

?

Chrome Android

?

Firefox Android Full support 65


Full support 65


Full support 57

Disabled'

Disabled' From version 57: this feature is behind the dom.streams.enabled preference (needs to be set to true) and the javascript.options.streams preference (needs to be set to true). To change preferences in Firefox, visit about:config.

Opera Android

?

Safari iOS

?

Samsung Internet Android

?

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
Experimental. Expect behavior to change in the future.'
Experimental. Expect behavior to change in the future.
User must explicitly enable this feature.'
User must explicitly enable this feature.