The ByteLengthQueuingStrategy()
constructor creates and returns a ByteLengthQueuingStrategy
object instance.
On this page
ByteLengthQueuingStrategy: ByteLengthQueuingStrategy() constructor
Syntax
js
new ByteLengthQueuingStrategy(highWaterMark)
Parameters
An object with the following property:
-
highWaterMark
-
The total number of bytes that can be contained in the internal queue before backpressure is applied.
Unlike
CountQueuingStrategy()
where thehighWaterMark
parameter specifies a simple count of the number of chunks, withByteLengthQueuingStrategy()
, thehighWaterMark
parameter specifies a number of bytes — specifically, given a stream of chunks, how many bytes worth of those chunks (rather than a count of how many of those chunks) can be contained in the internal queue before backpressure is applied.
Return value
An instance of the ByteLengthQueuingStrategy
object.
Exceptions
None.
Examples
js
const queuingStrategy = new ByteLengthQueuingStrategy({
highWaterMark: 1 * 1024,
});
const readableStream = new ReadableStream(
{
start(controller) {
// …
},
pull(controller) {
// …
},
cancel(err) {
console.log("stream error:", err);
},
},
queuingStrategy,
);
const size = queuingStrategy.size(chunk);
Specifications
Specification |
---|
Streams Standard # blqs-constructor |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
ByteLengthQueuingStrategy |
52 | 16 | 65 | No | 39 | 10.1 | 52 | 52 | 65 | 41 | 10.3 | 6.0 |
See also
ByteLengthQueuingStrategy
interface
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ByteLengthQueuingStrategy/ByteLengthQueuingStrategy