Voltar à lista
Linux x86_64Arquivos & E/S#3

close

Fecha um descritor de arquivo, liberando-o para reutilização.

Descrição

Se este era o último descritor referenciando a file description subjacente, quaisquer locks são liberados e, para arquivos deletados sem outros nomes, o espaço em disco é finalmente liberado.

Header: unistd.hman 2

Atenção

Um erro retornado por `close` (ex.: por falha de flush em sistemas de arquivos de rede) já significa que o descritor foi liberado — não se deve chamar `close` novamente após um erro, mesmo que os dados não tenham sido persistidos com segurança.

Assinatura

int close(int fd);

Parâmetros

ParâmetroTipoDescrição
fdintDescritor de arquivo a fechar.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1fdint

Valor de retorno

0 em sucesso; -1 em erro, com errno definido.

Códigos de erro (errno)

EBADF(9)
Descritor de arquivo inválido.
EINTR(4)
Chamada interrompida por um sinal.
EIO(5)
Erro de E/S físico.
ENOSPC(28)
Sem espaço livre no dispositivo.
EDQUOT(122)
Cota de disco excedida.

Relacionadas