The writable stream will only emit 'drain' if the buffer fills past the limit. In that case, a prior call to `writable.write(...)` would return `false` indicating you should wait for drain before calling write again. Even if your code can't access the return value for the last writable.write call, you can check `if (writable.writableNeedDrain) { ...` to decide to wait for drain.
This program will run forever, since we never write to stdout, stdout never "drains":
This program will run forever, since we never write to stdout, stdout never "drains":