-3
私はマルチスレッドプログラムを作成しています。これらのスレッドはすべて、そのデータを1つのファイルに書き込む必要があります。 これらのスレッドは、何らかの付加専用ログのために異なる文字列しか書いていません。複数のスレッドが1つのファイルに書き込むためのベストプラクティスは何ですか?
出力のためにスレッド間でファイルを共有するベストプラクティスは何ですか?
私はマルチスレッドプログラムを作成しています。これらのスレッドはすべて、そのデータを1つのファイルに書き込む必要があります。 これらのスレッドは、何らかの付加専用ログのために異なる文字列しか書いていません。複数のスレッドが1つのファイルに書き込むためのベストプラクティスは何ですか?
出力のためにスレッド間でファイルを共有するベストプラクティスは何ですか?
(将来の質問のために、その情報をコメントではなく質問に入れてください)スレッドにファイルアクセスを行わないように強くおすすめします。ロギングがそのスレッドの残りの部分でパフォーマンスに悪影響を与えることを意味します。
そのため、NathanOliverの提案では、スレッドを共有コンテナに書き込んだ後、そのコンテナをファイルにダンプすることをお勧めします。
個人的には、すべてのスレッドが共有コンテナにデータを書き込んだ後、コンテナからデータを抽出してファイルに書き込む別のスレッドがあるとします。 – NathanOliver
ファイル書き込み用のロック機構があることを確認してください。 – Jeyaram
ベストプラクティスは、共有と競合を避けることです。 –