我想知道单个文件上的写入是否以原子方式完成,使得写入("bla bla")和后续写入("herp derp")到同一文件中永远不会导致交错,例如"bla herp bla derp" ".假设这些写操作发生在不同的进程或线程中,那么先控制哪些操作?
另外,read()总是返回反映文件的数据,该文件处于完全完成所有先前写入的状态(数据是否已实际写入磁盘)?例如,在写入("herp derp")之后,所有后续读取将始终反映写入文件的完整数据,或者后续读取有时仅反映"herp"而不反映"derp"(或者有时不反映任何数据)在所有)?如果读写在不同的进程/线程中发生怎么办?
我对并发文件访问策略不感兴趣.我只是想知道读写的内容.