raise - Man Page

send a signal to the caller


Standard C library (libc, -lc)


#include <signal.h>

int raise(int sig);


The raise() function sends a signal to the calling process or thread. In a single-threaded program it is equivalent to

kill(getpid(), sig);

In a multithreaded program it is equivalent to

pthread_kill(pthread_self(), sig);

If the signal causes a handler to be called, raise() will return only after the signal handler has returned.

Return Value

raise() returns 0 on success, and nonzero for failure.


For an explanation of the terms used in this section, see attributes(7).

raise()Thread safetyMT-Safe


C11, POSIX.1-2008.


POSIX.1-2001, C89.

Since glibc 2.3.3, raise() is implemented by calling tgkill(2), if the kernel supports that system call. Older glibc versions implemented raise() using kill(2).

See Also

getpid(2), kill(2), sigaction(2), signal(2), pthread_kill(3), signal(7)

Referenced By

abort(3), gsignal(3), pthread_kill(3), pthsem(3), sigaction(2), signal(2), signal(7), signal-safety(7), sigprocmask(2), sigset(3), sigvec(3), s-nail(1), tickit_term_pause(3).

2023-10-31 Linux man-pages 6.06