文件IO中的原子操作

1.open()中指定O_APPEND,则每次write都会先lseek到文件尾,write相对其他进程为原子的

2.open()中指定O_CREAT,则检测文件是否存在和新建文件这两个操作合并为一个原子操作。

3.tmpfile接口把创建文件和unlink文件合并为一个原子操作。

4.fcntl()的文件锁和flock()的文件锁(这两种不一样,具体可man flock)的上锁操作是原子的。

 

posted @ 2013-06-14 15:23  farseeraliens  阅读(218)  评论(0编辑  收藏  举报