首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >同时写入和读取同一文件(磁盘是异步的?)

同时写入和读取同一文件(磁盘是异步的?)
EN

Stack Overflow用户
提问于 2010-08-30 23:03:28
回答 1查看 431关注 0票数 0

我们正在创建一个web服务,其中我们将文件写入磁盘。有时,这些文件将在写入的同时被读取。

如果我们这样做-从同一个文件中写入和读取-我们有时会得到长度相同的文件,但其中的一些数据并不相同。因此,对于一个350mb的文件,我们可能会得到20-40个不同的字节。

如果我们有3-4个同时写入和读取的文件,则通常会出现此问题。这个问题会不会是因为不能保证在对磁盘进行“写入”之后,数据实际上是写入的,即磁盘是异步的。

此外,我们正在测试的电脑只是一台标准的macbook pro,所以没有任何花哨的磁盘。

bug可能在其他地方,但我们只是想问这个问题,看看是否有人知道关于writing+reading的事情。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-30 23:06:21

所有现代操作系统都支持对文件的并发读写(显然,只有一个写入器)。所以这不是操作系统级别的错误。但是 do 要确保没有多个线程/进程试图将数据追加到文件中。

检查您的应用程序代码。检查您正在使用的缓冲区。确保您的应用程序是同步的,并且读取器和写入器之间没有竞争条件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3601607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档