files/en-us/web/api/bytelengthqueuingstrategy/highwatermark/index.md
{{APIRef("Streams")}}{{AvailableInWorkers}}
The read-only ByteLengthQueuingStrategy.highWaterMark property returns the total number of bytes that can be contained in the internal queue before backpressure is applied.
[!NOTE] Unlike
CountQueuingStrategy()where thehighWaterMarkproperty specifies a simple count of the number of chunks, withByteLengthQueuingStrategy(), thehighWaterMarkparameter 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.
An integer.
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);
console.log(`highWaterMark value: ${queuingStrategy.highWaterMark}$`);
{{Specifications}}
{{Compat}}