The Open Group Base Specifications Issue 7
IEEE Std 1003.1, 2013 Edition
Copyright © 2001-2013 The IEEE and The Open Group

#### NAME

> pthread_kill - send a signal to a thread

#### SYNOPSIS

> ``[CX] #include <signal.h>
> int pthread_kill(pthread_t` thread`, int` sig`);``
> `
> `

#### DESCRIPTION

> The pthread_kill() function shall request that a signal be delivered to the specified thread.

> As in kill(), if sig is zero, error checking shall be performed but no signal shall actually be sent.

#### RETURN VALUE

> Upon successful completion, the function shall return a value of zero. Otherwise, the function shall return an error number. If the pthread_kill() function fails, no signal shall be sent.

#### ERRORS

> The pthread_kill() function shall fail if:

> [EINVAL]
>   The value of the sig argument is an invalid or unsupported signal number.

> The pthread_kill() function shall not return an error code of [EINTR].

The following sections are informative.

#### EXAMPLES

> None.

#### APPLICATION USAGE

> The pthread_kill() function provides a mechanism for asynchronously directing a signal at a thread in the calling process. This could be used, for example, by one thread to affect broadcast delivery of a signal to a set of threads.

> Note that pthread_kill() only causes the signal to be handled in the context of the given thread; the signal action (termination or stopping) affects the process as a whole.

#### RATIONALE

> If an implementation detects use of a thread ID after the end of its lifetime, it is recommended that the function should fail and report an [ESRCH] error.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> kill, pthread_self , raise

> XBD <signal.h>

#### CHANGE HISTORY

> First released in Issue 5. Included for alignment with the POSIX Threads Extension.

#### Issue 6

> The pthread_kill() function is marked as part of the Threads option.

> The APPLICATION USAGE section is added.

#### Issue 7

> The pthread_kill() function is moved from the Threads option to the Base.

> Austin Group Interpretation 1003.1-2001 #142 is applied, removing the [ESRCH] error condition.

End of informative text.

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2013 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]