Cómo utilizar el evento de drenaje de la secuencia. Se puede escribir en Node.js

En Node.js estoy usando elfs.createWriteStream Método para anexar datos a un archivo local. En la documentación del Nodo mencionan eldrain evento cuando se usafs.createWriteStream, pero no lo entiendo

var stream = fs.createWriteStream('fileName.txt');
var result = stream.write(data);

En el código anterior, ¿cómo puedo usar el evento de drenaje? ¿Se usa el evento correctamente a continuación?

var data = 'this is my data';
if (!streamExists) {
  var stream = fs.createWriteStream('fileName.txt');
}

var result = stream.write(data);
if (!result) {
  stream.once('drain', function() {
    stream.write(data);
  });
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta