Editar: ¡ Buenas noticias! Comenzar con Node.js 8.0.0 readable.destroy
está oficialmente disponible: https://nodejs.org/api/stream.html#stream_readable_destroy_error
ReadStream.destroy
Puede llamar a la función ReadStream.destroy en cualquier momento.
var fs = require('fs');
var readStream = fs.createReadStream('lines.txt');
readStream
.on('data', function (chunk) {
console.log(chunk);
readStream.destroy();
})
.on('end', function () {
console.log('All the data in the file has been read');
})
.on('close', function (err) {
console.log('Stream has been destroyed and file has been closed');
});
La función pública ReadStream.destroy
no está documentada (Node.js v0.12.2) pero puedes echar un vistazo al código fuente en GitHub ( confirmación del 5 de octubre de 2012 ).
La destroy
función marca internamente la ReadStream
instancia como destruida y llama a la close
función para liberar el archivo.
Puede escuchar el evento de cierre para saber exactamente cuándo se cierra el archivo. El evento final no se activará a menos que los datos se consuman por completo.
Tenga en cuenta que las destroy
(y close
) funciones son específicas de fs.ReadStream . No forman parte de la "interfaz" legible de flujo genérico .
fs
módulo.close
no existe enStream.Readable
.