Provided by:
manpages-pt-dev_20040726-2_all 
NOME
fdatasync - sincroniza os dados de um arquivo com aquele no disco
SINOPSE
#include <unistd.h>
#ifdef _POSIX_SYNCHRONIZED_IO
int fdatasync(int fd);
#endif
DESCRI O
fdatasync esvazia todos do buffers de dados de um arquivo para o disco
(antes do retorno da chamada de sistema). Ele lembra fsync mas não é
requerido para atualizar os metadados como por exemplo o tempo de
acesso.
Aplicações que acessam base da dados or arquivos de log frequentemtne
escrevem pequeno fragmento de dados (por exemplo, uma linha em um
arquivo de log) e então chama fsync imediatamente para assegurar que os
dados escritos são fisicamente armazenados no disco rígido. Desafortu‐
nadamente, fsync irá sempre iniciar duas operações de escrita: uma para
a recente escrita de dados e outra para atualizar o tempo de modi‐
ficação armazenado no inode. Se o tempo de modificação não é uma parte
da transação o conceito de fdatasync pode ser usado para evitar inodes
desnecessários em operações de escrita no disco.
Em caso de sucesso, zero é retornado. Caso contrário, -1 é retornado, e
errno é selecionado adequadamente.
ERROS
EBADF fd não é um descritor de arquivos aberto para escrita.
EROFS, EINVAL
fd é confinado para um arquivo especial o qual não suporta sin‐
cronização.
EIO Um erro ocorreu durante a sincronização.
PROBLEMAS
Atualmente (Linux 2.0.23) fdatasync é equivalente a fsync.
POSIX1b (anteriormente POSIX.4)
fsync(2), B.O. Gallmeister, POSIX.4, O’Reilly, pp. 220-223 and 343.
André L. Fassone Canova <lonelywolf@blv.com.br> (tradução)
xxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx> (revisão)