Ce que le scénario d'appel fs.étroite est nécessaire
Je ne peux pas trouver plus d'informations sur fs.fermer expliquer en nodejs API.
Je veux savoir ce que le scénario d'appel fs.étroite est nécessaire.
par exemple:
var fs = require('fs'); fs.writeFile("/home/un.tex","abc"); ou comme fs.appendFile("/home/un.tex","fermer") fs.close(); //est-il nécessaire?
Existe-il des effets si je ne les appelons pas des fs.fermer?
Toute aide est appréciée.
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas besoin d'utiliser
fs.close
aprèsfs.readFile
,fs.writeFile
, oufs.appendFile
qu'ils ne retournent pas unfd
(descripteur de fichier). Ceux ouvrez le fichier, les exploiter, et puis fermez-le pour vous.Le flux renvoyé par
fs.createReadStream
etfs.createWriteStream
fermer après que le flux se termine, mais peut être fermé au début. Si vous avez mis en pause un flux, vous devez appeler près du ruisseau pour fermer lafd
ou reprendre le cours d'eau et laissez la fin de l'après émettant toutes ses données.Mais si vous appelez
fs.open
ou de toutes les autres, qui donnent unfd
, vous devez éventuellementfs.close
lafd
qui vous sont donnés.close()
, pourquoi la collecte des ordures ne prend pas soin de cela pour vous, et de quel type de programmes/code/modèles réellement rencontrez des problèmes lors de l'oubli d'appelerfs.close()
?fd
est hors de portée? Il ferme automatiquement ou pas?EMFILE: too many open files
erreur.fs.open
a été appelé est annulé? Ensuite, l'OS considérer le descripteur de fichier encore réservé?fs.readFile
,fs.writeFile
, etfs.appendFile
avec le premier argument d'un descripteur de fichier (numéro). Si vous le faites, vous devez également appelerfs.close
lorsque vous avez terminé la lecture, en écriture et en ajoutant.