TKILL(2)

NAME
tkill - send a signal to a single process

SYNOPSIS
#include <sys/types.h>
#include <linux/unistd.h>

_syscall2(int, tkill, pid_t, tid, int, sig)

int tkill(pid_t tid, int sig);

DESCRIPTION
The tkill system call is analogous to kill(2), except when the specified process is part of a thread group (created by specifying the CLONE_THREAD flag in the call to clone). Since all the processes in a thread group have the same PID, they cannot be individually signalled with kill. With tkill, however, one can address each process by its unique TID.

RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.

ERRORS

EINVAL
    An invalid TID or signal was specified.

ESRCH
    No process with the specified TID exists.

EPERM
    The caller did not have permission to send the signal to the specified process. For a process to be allowed to send a signal, it must either have root privileges, or its real or effective user ID must be equal to the real or saved set-user-ID of the receiving process.

CONFORMING TO
tkill is Linux specific and should not be used in programs that are intended to be portable.

SEE ALSO
gettid(2), kill(2)