2

イベントディスパッチスレッドで直接ログファイルに書き込むことが許容されるかどうか疑問に思いました。経験則では、長い操作をEDTから除外することですが、テキストファイルへの1回の書き込みがこのカテゴリに分類されるかどうかはわかりません。現在、これを実行しているワーカースレッドがありますが、いくつかの奇妙な例外が発生しています。これらの例外を調査する前に、EDTで直接これらのログ書き込みを実行しても問題ないかどうかを確認したいと思いました。私が言ったように、これらの書き込みは比較的小さく、まれです。

前もって感謝します!

4

1 に答える 1

1

これをSwingWorkerにディスパッチすることをお勧めします。これにより、実際のファイルの書き込みがバックグラウンド スレッドに渡されます。ただし、log4j などのフレームワークを使用している場合は、ライブラリが最初に実行するバッファリングまたはその他のマルチスレッドを調査する必要があります。

于 2012-12-17T21:55:39.080 に答える