File::Sync - Perl access to fsync() and sync() function calls
use File::Sync qw(fsync sync); fsync(\*FILEHANDLE) or die "fsync: $!"; sync(); use File::Sync qw(fsync); use IO::File; $fh = IO::File->new("> /tmp/foo") or die "new IO::File: $!"; ... fsync($fh) or die "fsync: $!";
The fsync() function takes a Perl file handle as its only argument, and passes its fileno() to the C function fsync(). It returns undef on failure, or true on success.
The fsync_fd() function is used internally by fsync(); it takes a file descriptor as its only argument.
The sync() function is identical to the C function sync().
This module does not export any methods by default, but fsync() is made available as a method of the FileHandle and IO::Handle classes.
Doing fsync() if the stdio buffers aren't flushed (with $| or the autoflush method) is probably pointless.
$|
Calling sync() too often on a multi-user system is slightly antisocial.
Carey Evans <c.evans@clear.net.nz>
perl(1), fsync(2), sync(2), perlvar(1)
To install File::Sync, copy and paste the appropriate command in to your terminal.
cpanm
cpanm File::Sync
CPAN shell
perl -MCPAN -e shell install File::Sync
For more information on module installation, please visit the detailed CPAN module installation guide.