0

ファイルをディスクに書き込む Web サービスを作成しています。これらのファイルは、書き込みと同時に読み取られることがあります。

これを行うと、同じファイルから書き込みと読み取りを行うと、同じ長さのファイルになることがありますが、内部のデータの一部は同じではありません。したがって、350MB のファイルでは、おそらく 20 ~ 40 バイトの違いがあります。

この問題は、ほとんどの場合、3 ~ 4 個のファイルが同時に読み書きされている場合に発生します。この問題は、ディスクへの「書き込み」の後、データが実際に書き込まれる、つまりディスクが非同期であるという保証がないためである可能性があります。

また、テストしているコンピューターは標準の macbook pro にすぎないため、派手なディスクは一切使用していません。

バグは別の場所にある可能性がありますが、質問をして、この書き込みと読み取りのことについて何か知っている人がいるかどうかを確認したかっただけです。

4

1 に答える 1

0

最近のすべてのOSは、ファイルの同時読み取りと書き込みをサポートしています(明らかに、単一のライターが与えられます)。したがって、これはOSレベルのバグではありません。ただし、ファイルにデータを追加しようとする複数のスレッド/プロセスがないことを確認してください

アプリケーションコードを確認してください。使用しているバッファを確認してください。アプリケーションが同期されており、リーダーとライターの間に競合状態がないことを確認してください。

于 2010-08-30T15:06:21.157 に答える