What the scenario call fs.close is necessary

You don’t need to use fs.close after fs.readFile, fs.writeFile, or fs.appendFile as they don’t return a fd (file descriptor). Those open the file, operate on it, and then close it for you.

The streams returned by fs.createReadStream and fs.createWriteStream close after the stream ends but may be closed early. If you have paused a stream, you must call close on the stream to close the fd or resume the stream and let it end after emitting all its data.

But if you call fs.open or any of the others that give a fd, you must eventually fs.close the fd that you are given.

Leave a Comment