Skip to content

stream-utils/destroy-on-hwm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

destroy-on-hwm

NPM version Build status Test coverage Dependency Status License Downloads Gittip

Destroys a writable stream if a write ever hits the high water mark. This is useful when piping a single stream to multiple clients - you don't want one client slowing down the rest of the clients. With how streams currently work, streams flow at the speed of the slowest destination stream.

Usage

var Stream = require('stream');
var destroyOnHWM = require('destroy-on-hwm');

var stream = new Stream.PassThrough();

/**
 * With no callback, attempts to execute `stream.destroy()` on high water mark.
 * This stream does not have `.destroy()` though, so it's really a noop.
 */

destroyOnHWM(stream);

/**
 * Instead, we'll just use a custom callback.
 */

destroyOnHWM(stream, function (stream) {
  assert(stream === this); // the stream is passed as both `this` and the first argument
  console.log('High water mark reached!');
});

About

Destroy a writable stream if it hits the high water mark

Resources

License

Stars

Watchers

Forks

Packages

No packages published