Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

thr_kill(3c) [x11r4 man page]

thr_kill(3C)                                                                                                                          thr_kill(3C)

NAME
thr_kill - send a signal to a thread SYNOPSIS
cc -mt [ flag... ] file... [ library... ] #include <signal.h> #include <thread.h> int thr_kill(thread_t thread, int sig); The thr_kill() function sends the sig signal to the thread designated by thread. The thread argument must be a member of the same process as the calling thread. The sig argument must be one of the signals listed in signal.h(3HEAD), with the exception of SIGCANCEL being reserved and off limits to thr_kill(). If sig is 0, a validity check is done for the existence of the target thread; no signal is sent. Upon successful completion, thr_kill() returns 0. Otherwise, an error number is returned. In the event of failure, no signal is sent. The thr_kill() function will fail if: EINVAL The sig argument value is not zero and is an invalid or an unsupported signal number. ESRCH No thread was found that corresponded to the thread designated by thread ID. See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |MT-Level |Async-Signal-Safe | +-----------------------------+-----------------------------+ kill(2), sigaction(2), raise(3C), signal.h(3HEAD), thr_self(3C), attributes(5), standards(5) 23 Mar 2005 thr_kill(3C)

Check Out this Related Man Page

TKILL(2)						     Linux Programmer's Manual							  TKILL(2)

NAME
tkill, tgkill - send a signal to a thread SYNOPSIS
int tkill(int tid, int sig); int tgkill(int tgid, int tid, int sig); DESCRIPTION
tgkill() sends the signal sig to the thread with the thread ID tid in the thread group tgid. (By contrast, kill(2) can only be used to send a signal to a process (i.e., thread group) as a whole, and the signal will be delivered to an arbitrary thread within that process.) tkill() is an obsolete predecessor to tgkill(). It only allows the target thread ID to be specified, which may result in the wrong thread being signaled if a thread terminates and its thread ID is recycled. Avoid using this system call. If tgid is specified as -1, tgkill() is equivalent to tkill(). These are the raw system call interfaces, meant for internal thread library use. RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately. ERRORS
EINVAL An invalid thread ID, thread group ID, or signal was specified. EPERM Permission denied. For the required permissions, see kill(2). ESRCH No process with the specified thread ID (and thread group ID) exists. VERSIONS
tkill() is supported since Linux 2.4.19 / 2.5.4. tgkill() was added in Linux 2.5.75. CONFORMING TO
tkill() and tgkill() are Linux-specific and should not be used in programs that are intended to be portable. NOTES
See the description of CLONE_THREAD in clone(2) for an explanation of thread groups. Glibc does not provide wrappers for these system calls; call them using syscall(2). SEE ALSO
clone(2), gettid(2), kill(2) COLOPHON
This page is part of release 3.27 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. Linux 2008-10-01 TKILL(2)
Man Page

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

thread::signal

Hi,all! Now ,I write perl for windows platform,and will use signal for asynchronous operations ,but I find it could bring some bugs if it is used incorrectly ,pls help!!! :D (1 Reply)
Discussion started by: hhh101
1 Replies

2. Programming

[Problem] raise a signal in FreeBSD

I am trying to send a SIGUSR1 to a set of process. Please tell me how to do. I've tried the system call raise(int sig) but it just raise a signal of to the 'current process.' My program is about a network chat server. When a client connects in, The main process will fork a new process... (1 Reply)
Discussion started by: Namely
1 Replies

3. Programming

How to cancel a thread safely from the initial thread?

how about asynchronous canceling? or with signal? if with signal whether it effects the process? my english so badly :( :( (1 Reply)
Discussion started by: alan.zhao
1 Replies

4. Programming

exception vs. multiple-thread

Some questions regarding exception vs. multiple-thread : 1. there are one main thread and one child thread. the child thread may throw one exception but it doesn't try to catch any exception. in the main thread, it tries to catch excpetion. Can main thread catch the exception that is thrown... (1 Reply)
Discussion started by: princelinux
1 Replies

5. Shell Programming and Scripting

How to send SIGNAL to the thread?

Hello, I have to send SIGSEGV to the thread. What is the simplest and efficient way to do that? (6 Replies)
Discussion started by: Rahulpict
6 Replies

6. Post Here to Contact Site Administrators and Moderators

mark thread as "solved"

hi, is it possible to add an option for the creator of a thread to mark a thread as solved, should be shown with a green check mark or something like that in the left column cheers funksen (1 Reply)
Discussion started by: funksen
1 Replies

7. Shell Programming and Scripting

Help with Truststore automation shell script

Please close this thread. I have raise this question in appropriate thread. Thanks (0 Replies)
Discussion started by: KuldeepSinghTCS
0 Replies

8. Programming

Losing signal problem

I'm newbie in UNIX programming, I have a problem with signals. I'm writing multithread program, where threads can die at any moment. When thread dies it generates signal SIGUSR1 to main thread and then thread dies. Main thread gets a signal and waits for thread dead. I wrote program like this: ... (5 Replies)
Discussion started by: DendyGamer
5 Replies

9. UNIX for Advanced & Expert Users

Implementing thread in UNIX

Hi For our load testing , we are using stubs (unix shell script) which send the response to the request coming from the application. As the unix stub is single threaded , it is responding to only one request whereas multiple requests come in parallely. I haven't worked on thread concepts... (5 Replies)
Discussion started by: jenanee
5 Replies