【发布时间】:2015-09-02 19:27:40
【问题描述】:
这个问题我很久了。
假设在时间t=0 sec 程序A 打开带有"w+" 标志的文件/data。它将/data 清除干净并开始将数据写入此文件。
现在假设t=1 sec 程序B 打开带有"w+" 标志的同一个文件/data 并开始向该文件写入数据。现在到底发生了什么?
程序B 显然将/data 擦除并从头开始写入,而程序A 已前进并有一个指向文件某处的文件位置指针。
此时此刻到底发生了什么?操作系统如何知道文件的内容是什么?
假设B 写入了 100 个字节的bbbbbbbbbbbb... 而A 不断写入大量的a 字母aaaaaaaaa...
文件会发生什么?
会是这样吗:
`bbbbbbbbbbbbbbbbbbb[100 b's] ??? what is happening here ?? aaaaaaaaaaaaaaaa...`
b 和 a 之间是否会有空白?这个空旷的地方是什么?它不会是空格字符,因为没有程序写空格字符。那么文件中的空格是什么?
总体上会发生什么?有人知道吗。我很困惑,我的头疼。
【问题讨论】:
-
你可以自己写代码,自己找找