fflush and fsync

sync:将所有修改过的快缓存区排入写队列,然后返回,并不等待实际写磁盘操作结束;

fsync:只对有文件描述符制定的单一文件起作用,并且等待些磁盘操作结束,然后返回;

fdatasync:类似fsync,但它只影响文件的数据部分。fsync还会同步更新文件的属性;

fflush:标准I/O函数(如:fread,fwrite)会在内存建立缓冲,该函数刷新内存缓冲,将内容写入内核缓冲,要想将其写入磁盘,还需要调用fsync。(先调用fflush后调用fsync,否则不起作用)。


http://www.jb51.net/article/101062.htm

你可能感兴趣的:(开发)