sourCEntral - mobile manpages

pdf

FSYNC(2) BSD System Calls Manual FSYNC(2)

NAME

fsync — synchronise changes to a file

LIBRARY

Standard C Library (libc, −lc)

SYNOPSIS

#include <unistd.h>

int

fsync(int fd);

DESCRIPTION

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.

RETURN VALUES

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.

ERRORS

The 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.

SEE ALSO

sync(2), syncer(4), sync(8)

HISTORY

The fsync() system call appeared in 4.2BSD.

BSD June 4, 1993 BSD

pdf