javaを閉じる前に別のハンドラによって更新されているファイルの内容を読み取る方法はありますか?Java - 同時にファイルを読み書きするには?
答えて
理論的には非常に簡単ですが、ファイルはこのようにデータを交換するようには設計されておらず、要件に応じて正しく取得するのは難しい場合があります。これが一般的な解決法がない理由です。
他のプロセスが書き込みを行っているときにファイルを読みたい場合、書き込みスレッドが終了していなくても、読み取りスレッドはEOFを参照します。ファイルを再度開いて、ファイルが最後に読み込まれた場所にスキップして続行する必要があります。書き込みスレッドは、書き込み中のファイルをロールして、読み取りでこれを検出して処理する必要があることを意味します。
具体的に何をしたいですか?
このようにデータを交換するようには設計されていませんか? SQLiteは異なっているようです;-)わかりました、私はそれをalittle .. –
オペレーティングシステムによって異なります。
伝統的に、POSIX-yオペレーティングシステム(Linux、Solaris、...)は、別々のプロセスであっても読み取りと書き込みの両方でファイルを開くことに全く問題ありませんからのおよび/または書き込まれる)。
Windowsでは、より一般的なアプローチは、ファイルを排他的に開くことです(Windows はが非排他的なファイルアクセスをサポートしますが、アプリケーションではほとんど使用されません)。
Javaには、ファイルへのアクセス方法を指定する方法がないため、プラットフォームのデフォルトが使用されます(Linux/Solarisでは共有アクセス、Windowsでは排他アクセス)。
* NIOとJava 7の新しいNIOではこれが間違っているかもしれませんが、私は大きなNIOのエキスパートではありません。
- 1. Javaでファイルを同時に読み書きする
- 2. Javaでの同時読み込み/書き込みファイル
- 3. Javaコンソール/読み書き同時実行
- 4. Javaの既存のファイルに同時にデータを読み書きする
- 5. PythonとCファイルを同時に読み書きする
- 6. phpファイルから同時に読み書きする
- 7. 同時読み込み書き込み
- 8. 書き込み中に同時にcassandraを読み取る
- 9. 同時にExcelから読み書きするには?
- 10. 同じファイルを読み書きする
- 11. 同時ファイル書き込み
- 12. Javaの同じファイルへの読み込みと書き込み
- 13. 2つのスレッドによるファイルの同時読み込み/書き込み
- 14. Javaの同じファイルから読み書きする
- 15. android java異なるスレッドから同時にテキストビューを読み書きします。
- 16. MySQLは同時にテーブルを読み書きします
- 17. 同時に変数を読み書きする
- 18. Android内蔵ストレージの読み込み/書き込み同時に、
- 19. StreamWriterでTextWriterを同時に使用して読み込み/書き込みを同時に実行する
- 20. 読み書き同時実行
- 21. Couchbase読み書き同時実行
- 22. Ruby StringIO同時読み書き用
- 23. ファイルから読み込み、Javaのファイルに書き込む
- 24. WebGLテクスチャ同時に読み書きする
- 25. GroovyとPOI:同時に読み書きできますか?
- 26. 同じファイルを読み書きに使用できますか?
- 27. ソケットの読み込みと書き込みを同時に実行する
- 28. JAVA:一緒にファイルを読み書きする
- 29. ファイルの同時読み書きの処理
- 30. プログラムはファイルへの書き込みと読み込み時にクラッシュする
これは単一のJVM内にありますか?あなたがこれを行う必要がある根本的な理由は何ですか?あなたは何の問題を解決していますか? –
2つのハンドラの間に直接ストリームを確立するだけではどうですか? – TC1
は、ThorbjørnRavn Andersenと他の人のコメントに同意しました。実際の根本的な問題について話し合う必要があります。ソリューションの考え方ではなく、そのソリューションの実装方法を尋ねます。あなたが尋ねたやり方を通らずに、最終的に達成したいことをやり遂げる方法はすでにあります。私はプロセス間通信をしたいと思っていますが、私はちょうど野生の推測をしています。 – Chii