Les flux Node.js déclenchent les événements end
et finish
. Quelle est la différence entre les deux?
end
et finish
sont le même événement MAIS sur différents types de Streams.
stream.Readable
se déclenche UNIQUEMENT end
et JAMAIS finish
stream.Writable
se déclenche UNIQUEMENT finish
et JAMAIS end
Source: https://nodejs.org/dist/latest-v5.x/docs/api/stream.html
Pourquoi la dénomination différente du même événement?
La seule raison pour laquelle je pouvais penser est à cause des flux duplex (stream.Duplex
), qui implémentent à la fois stream.Readable
et stream.Writable
les interfaces ( https://nodejs.org/dist/latest-v5.x/docs/api/stream.html#stream_class_stream_duplex ) sont des flux lisibles et inscriptibles en même temps. Pour faire la différence entre la fin de la lecture et la fin de l'écriture sur le flux, vous devez avoir déclenché un événement différent. SO, pour les flux Duplex end
est en fin de lecture et finish
est en fin d'écriture.