Standard C Library (libc, -lc)
#include
<unistd.h>
int
fsync(int
fd);
The
fsync()
system call causes all modified data and attributes of
fd to be moved to a permanent storage device. This
normally results in all in-core modified copies of buffers for the
associated file to be written to a disk.
The
fsync()
system call should be used by programs that require a file to be in a known
state, for example, in building a simple transaction facility.
The fsync() function returns the
value 0 if successful; otherwise the value -1 is returned and
the global variable errno is set to indicate the
error.
The fsync() fails if:
The fsync() system call appeared in
4.2BSD.