Provided by: manpages-pt-dev_20040726-5_all 

NOME
close - fecha um descritor de arquivo
SINOPSE
#include <unistd.h>
int close(int fd);
DESCRIÇÃO
close fecha um descritor de arquivos. Assim que ele não se refira a quaisquer arquivos poderá ser
reusado. Qualquer bloqueio aplicado ao arquivo e de propriedade do processo é removido (independente do
descritor de arquivo que foi usado para aplicar o bloqueio).
Se fd é a última cópia de um descritor de arquivos em particular os recursos associados a ele serão
liberados; se um descritor tem a última referência para um arquivo o qual foi removido usando e unlink(2)
o arquivo é apaguado.
VALORES RETORNADOS
close Em caso de sucesso, 0 é retornado, caso contrário -1 é retornado.
ERROS
EBADF fd não é um descritor de arquivo aberto válido.
DE ACORDO COM
SVr4, SVID, POSIX, X/OPEN, BSD 4.3. SVr4 documenta a condição de erro adicional ENOLINK.
NOTAS
Não checar os valores retornados do fechamento é comum, mas apesar disto, erro de programação grave.
Implementações de sistemas de arquivos que usam técnicas como ''write-behind'', para aumentar a
performance, pode implicar no sucesso de write(2) , ainda que os dados não tenham sido gravados. O estado
de erro pode ser relatado em uma operação de escrita posterior, mas é garantido ser relatado no
fechamento do arquivo. Não checar os valores retornados ao fechar o arquivo pode implicar na perda
silenciosa de dados. Isto pode, especialmente, ser observado com NFS e cotas de disco.
Um fechamento bem sucedido não garante que os dados tenham sido armazenados com sucesso no disco, já que
o kernel adia escritas. Isto não é comum para um sistema de arquivos que esvazia os buffers quando o
fluxo é fechado. Se você precisa estar certo que os dados foram fisicamente armazenados use fsync(2) ou
sync(2).
VEJA TAMBÉM
open(2), fcntl(2), shutdown(2), unlink(2), fclose(3)
TRADUZIDO POR LDP-BR em 21/08/2000.
André L. Fassone Canova <lonelywolf@blv.com.br> (tradução) Fábio Henrique F. Silva <fabiohfs@mail.com>
(revisão)
14/04/1996 CLOSE(2)