ABORT(3)

NOME
abort - causa encerramento anormal do processo

SINOPSE
#include <stdlib.h>

void abort(void);

DESCRIÇÃO
A função abort() primeiro desbloqueia o sinal SIGABRT e, em seguida, levanta esse sinal para o processo de chamada (como se raise(3) tivesse sido chamado). Isso resulta na encerramento anormal do processo, a menos que o sinal SIGABRT seja capturado e o manipulador de sinal não retorne (consulte longjmp(3)).

Se o sinal SIGABRT for ignorado ou capturado por um manipulador que retorne, a função abort() ainda encerrará o processo. Isso é feito restaurando a disposição padrão para SIGABRT e aumentando o sinal pela segunda vez.

VALOR DE RETORNO
A função abort() nunca retorna.

ATRIBUTOS
Para uma explicação dos termos usados nesta seção, consulte attributes(7).
Interface | Atributo | Valor
abort() | Thread safety | MT-Safe

DE ACORDO COM
SVr4, POSIX.1-2001, POSIX.1-2008, 4.3BSD, C89, C99.

NOTAS
Até a glibc 2.26, se a função abort() causava o encerramento do processo, todos os fluxos abertos eram fechados e liberados (como em fclose(3)). No entanto, em alguns casos, isso pode resultar em conflitos e corrupção de dados. Portanto, começando com glibc 2.27, abort() encerra o processo sem liberar fluxos. O POSIX.1 permite qualquer comportamento possível, dizendo que abort() "pode incluir uma tentativa de efetuar fclose() em todos os fluxos abertos".

VEJA TAMBÉM
gdb(1), sigaction(2), assert(3), exit(3), longjmp(3), raise(3)

COLOFÃO
Esta página faz parte da versão 5.10 do projeto Linux man-pages. Uma descrição do projeto, informações sobre relatórios de bugs e a versão mais recente desta página podem ser encontradas em https://www.kernel.org/doc/man-pages/.

TRADUÇÃO
A tradução para português brasileiro desta página man foi criada por Paulo César Mendes <drpc@ism.com.br>, André Luiz Fassone <lonely_wolf@ig.com.br> e Rafael Fontenelle <rafaelff@gnome.org>.

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 (https://www.gnu.org/licenses/gpl-3.0.html) ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores (debian-l10n-portuguese@lists.debian.org).