Provided by: manpages-pt-dev_20040726-4_all bug

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)