5つのスレッドがあり、スレッドに関連付けられたファイルに既に行番号が割り当てられているとします。たとえば、スレッド1は行番号に書き込みます。 1から5まで、スレッド2は6から10に書き込みます...スレッド5は21から25に書き込みます。これを並列に行うことができるJavaプログラムを作成したい(つまり、単一のスレッドでファイルをロックしない)複数のスレッドを1つのファイルに書き込む方法は、あらかじめ定義されたセクションを(行番号で)書きますか?
0
A
答えて
0
Javaで利用可能なNIO APIを使用することをお勧めします。具体的にあなただけのファイルチャネルは、ファイルに接続されているSeekableByteChannelでいただきました重要
の利益のために、ここで文書を引用するFileChannel
に興味があるでしょう。 ファイル内に現在の位置があります。この位置は問合せされ、 となります。ファイル自体には、読み書き可能な可変長シーケンス バイトが含まれており、現在のサイズは となります。
ファイルの領域が他のプログラムによるアクセスに対してロックされている可能性があります。
ファイルチャネルは、複数の同時スレッドで使用するのに安全です。 closeメソッドは、チャンネル インターフェイスで指定されているように、いつでも呼び出すことができます。
関連する問題
- 1. 複数のスレッドで1つのファイルに書き込む方法は?
- 2. 複数のxmlファイルを1つのxmlから書き込む
- 3. WordPressでポストママをあらかじめ書き込む方法は?
- 4. Pythonはファイルから行を読み込み、特定の行番号から別のファイルに書き込む
- 5. 同じファイルに複数のスレッドを書き込む
- 6. 複数のスレッドが1つのファイルに書き込むためのベストプラクティスは何ですか?
- 7. 複数のスレッドで複数のファイルを書き込む方法は?
- 8. 複数の値をテキストファイルの1行に書き込む方法
- 9. 複数の変数を1つのCSV行に書き込む
- 10. Python - 特定の列番号からcsvに書き込む
- 11. 複数のスレッドからsqliteにデータを書き込む最良の方法
- 12. 複数のスレッドで書き込みファイルを読み込む
- 13. 複数のJSONオブジェクトを1つの.jsonファイルに書き込む
- 14. Javaの複数のスレッドからFileOutputStreamに書き込む
- 15. 複数のスレッドからAzureデータレイクにストリーミングデータを書き込む方法はありますか?
- 16. 番号に基づいて複数の配列に書き込む方法は?
- 17. Android:複数のセレクタを1つのxmlファイルに書き込む方法
- 18. 複数のスレッドからTraceListenerに書き込む
- 19. メモリから暗号化ファイルに書き込む方法C#
- 20. 複数のスレッドから同じファイルの異なる部分に書き込むことは可能ですか?
- 21. 複数のスレッドからランダムな順序でファイルに書き込む
- 22. 複数のスレッドが同じブール値に書き込む
- 23. 複数の行列を書き込むことなくMatlabのファイルに書き込む方法
- 24. 通知があったときにアドレスバーに書き込む方法(番号)
- 25. PHPでは、指定されたオフセットで1つの符号なしバイト値をファイルに書き込む方法はありますか?
- 26. 複数の行にQStringを書き込む方法は?
- 27. 複数行のawkコマンドをウィンドウに書き込む方法は?
- 28. 複数のリクエストを1つのCsvにPythonで書き込む
- 29. Java mvcからスレッドに書き込む
- 30. 関数から.csvファイルを書き込む方法は?
テキストファイルの行の長さが異なる可能性があります。したがって、問題があります。書き込みのための正しい位置を得るには... – MBo
同時アクセスをサポートするファイルシステムが必要です(つまり、1つのファイル内で複数の読み書き位置が必要です)。私はそのようなファイルシステムをサポートするオペレーティングシステムについては知らない。 – Hulk
なぜこれが必要でしょうか?ファイルへの書き込みは、通常のスレッドが行うことができるものより数百倍遅くなります。 IOは処理能力ではなくバインドされています。 – mvd