|FSYNC(2)||FreeBSD System Calls Manual||FSYNC(2)|
NAMEfsync — synchronise changes to a file
LIBRARYStandard C Library (libc, -lc)
SYNOPSIS#include < unistd.h>
fsync( int fd);
DESCRIPTIONThe 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.
RETURN VALUESThe 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.
ERRORSThe fsync() fails if:
- [ EBADF]
- The fd argument is not a valid descriptor.
- [ EINVAL]
- The fd argument refers to a socket, not to a file.
- [ EIO]
- An I/O error occurred while reading from or writing to the file system.
HISTORYThe fsync() system call appeared in 4.2BSD.
|June 4, 1993||FreeBSD|