1

同じ特定のパスと特定の拡張子を監視できる FileSystemWatcher が必要です。しかし、パスは、拡張機能と同じように、数十、数百、またはおそらく数千になる可能性があります (希望しないでください:P)。パスと ext はユーザーが追加します。

何百もの FileSystemWatcher を作成するのは得策ではありません。

それで - どうやってそれをするのですか?すべてのデバイス (HDD、SD フラッシュ、ペンドライブなど) を監視/観察することはできますか? 効率的でしょうか?私はそうは思わない... 。Windows ログ ファイルを変更するたびに、ウイルス対策プログラムによってファイルをスキャンします。

4

2 に答える 2

2

最初に試してから、問題が発生するかどうかを確認してください。

問題があるかどうかさえわからないものを最適化しようとしても、通常はあまり効果的ではありません。

于 2010-04-24T12:33:19.453 に答える
1

10,000 以上の FileSystemWatcher を作成すると問題が発生する可能性があることはおそらく正しいでしょう。その場合 (Foxfire が言うように、テストしてください)、簡単な統合から始めます。FileSystemWatchers を設定するときに拡張機能を無視し、取得後にイベントをフィルター処理します。

それでもリソースの使用量が多すぎる場合は、同じ方法でパスをインテリジェントに組み合わせてみてください。おそらく、ドライブ文字ごとに 1 つの FileSystemWatcher のみを作成し、コードがイベントを受信した後に残りのフィルタリングを実行することもできます。

于 2010-04-24T12:40:32.910 に答える