2012-04-18 6 views
4

次のコードスニペットは、異なるファイルに対して複数回呼び出される関数にあります。createReadStreamエラー: "OK、Open"

var readStream = fs.createReadStream(file); 
readStream.on('error', function(err) { 
    console.log(err); 
}); 

定期的に、いくつかのファイル、すべてではないが、次のメッセージとエラーになります:

OK, open '{filename}' 

エラーの正確な数は常に同じではありませんが、ほぼ同量です。常に同じファイルであるとは限りません。私は〜6500ファイルを処理して〜1150エラーを取得します。

このエラーは何を意味しますか?私は間違って何をしていますか?

+0

OS、ノードのバージョンといくつかのより多くのコードが... – madflow

+0

ノードv0.6.15を助けることができます。 Windows 7 –

+5

これは私のLinuxマシンでは再現できません。しかし、これは:http://comments.gmane.org/gmane.comp.lang.javascript.nodejs/38045あなたの問題のように聞こえる。そこでは、Windowsマシン上での問題と、同時に開いているファイルの制限について説明しています。たぶんこれが役立ちます。 – madflow

答えて

0

graceful-fsをご覧ください。これは、いくつかのaddtionaly機能を使って、すべてのfs呼び出しを抽象化するノードモジュールです。 Windowsシステムで特に便利です。

使い方は死んでシンプルです:

# Install 
$ npm install graceful-fs 

# Usage (in foo.js) 
var fs = require('graceful-fs');