に書き込まれたとき、これは少しあいまいかもしれませんが、私は原料の束をやった後、ファイルに小さなカウンターを書き込みノードのアプリがありますが原因でreadFileの対処方法ファイルが現在
Fs.readFile(Blender.LOG , function(error, data) { //read the log file
if(error) {
throw error;
}
counter = parseInt(data) + 1; //add this blend
if(!isNaN(counter)) { //check if the number is a number
Fs.writeFile(Blender.LOG, counter, function(error) {
if(error) {
throw error;
}
Blender.debugging('counter: added', 'report');
});
}
else { //throw error
Blender.log.error(' Counter number not valid ("' + counter + '"). Leaving it alone for now!');
}
});
をアプリケーションでの需要が多いのは、readFile
のコールバックにisNaN
があります。これは、ファイルがすでに前のインスタンスのwriteFile
からの書き込み用に開いているためです。
あなたはこの問題に対処する方法を
(しかしスローエラーがないことを私に興味深いものですか)?私は本当にアプリを速く保つためにこれをブロック書き込みにしたくないですが、私はおそらく書き込みをキューに入れたいと思いますか?私はすべてのために開いています。 :)あなたがimplementionファイルカウンターにしたいようmakesureは原子it'isため
おかげ
ええ、私は赤ちゃんを調べていましたが、それはセキュリティで少し慎重です。はるかに速くなければならない時にのみディスクに書き込むインメモリシステム! – Dominik