複数のInputStream
(複数のZipEntry
の)を安全に取得して、それぞれのスレッドでそれぞれ処理するのが安全かどうかを指定するステートメントは見つかりません。ZipFile InputStreamsはスレッドセーフですか?
これは試しても安全でしょうか?
お勧めですか?
を追加しました
は、私はこの方法で、より良いパフォーマンスを得るかもしれませんか?
複数のInputStream
(複数のZipEntry
の)を安全に取得して、それぞれのスレッドでそれぞれ処理するのが安全かどうかを指定するステートメントは見つかりません。ZipFile InputStreamsはスレッドセーフですか?
これは試しても安全でしょうか?
お勧めですか?
を追加しました
は、私はこの方法で、より良いパフォーマンスを得るかもしれませんか?
読書はOKです。各ストリームには独自の状態が含まれているので、同じファイルを指し示す複数のストリームを同時に開いたり、それらのストリームを同時に読むことができます。
ただし、同時書き込みは間違っています。ファイルに不一致が作成されます。
+1:私は各スレッドで異なるInputStreamを使用します。スレッド間でInputStreamを共有することも問題を引き起こす可能性があります。 –
これをサポートするドキュメントはありますか?各ストリーム(したがってすべてのスレッド)は 'ZipFile'オブジェクトを共有することに注意してください。 ...私は並行して書くことを夢見ることはありません。 – OldCurmudgeon
私はそれを試した...それは働いた...しかし、それはパフォーマンスを向上させませんでした。実際にはパフォーマンスが50%低下しました。 – OldCurmudgeon