用O_APPEND标志open一个文件,能否用lseek在任意位置读写
用O_APPEND标志open一个文件,能否用lseek在任意位置读写
结论比较简单,用O_APPEND打开后,write操作是一个原子操作,所以每次都会自动把偏移量移到文件末尾,所以用lseek不能在任意位置write。但是可以用lseek在任意位置开始读。下面用代码测试来说明:
来看测试结果:
结果很好的说明了之前结论。
结论比较简单,用O_APPEND打开后,write操作是一个原子操作,所以每次都会自动把偏移量移到文件末尾,所以用lseek不能在任意位置write。但是可以用lseek在任意位置开始读。下面用代码测试来说明:
来看测试结果:
结果很好的说明了之前结论。
评论暂时关闭