ABCDEFGHIJKLMNOPQRSTUVWXYZ

pthread_kill_other_threads_np

PTHREAD_KILL_OTHER_THREADS_NP(3)              PTHREAD_KILL_OTHER_THREADS_NP(3)



NAME
       pthread_kill_other_threads_np - terminate all threads in program except
       calling thread


SYNOPSIS
       #include <pthread.h>

       void pthread_kill_other_threads_np(void);


DESCRIPTION
       pthread_kill_other_threads_np is a non-portable LinuxThreads extension.
       It  causes  all threads in the program to terminate immediately, except
       the calling thread which proceeds normally. It is intended to be called
       just  before a thread calls one of the exec functions, e.g.  execve(2).

       Termination of the other threads is not performed through  pthread_can-
       cel(3)  and  completely bypasses the cancellation mechanism. Hence, the
       current settings for  cancellation  state  and  cancellation  type  are
       ignored,  and  the  cleanup handlers are not executed in the terminated
       threads.


AUTHOR
       Xavier Leroy <Xavier.Leroy@inria.fr>


SEE ALSO
       execve(2),     pthread_setcancelstate(3),     pthread_setcanceltype(3),
       pthread_cancel(3).


BUGS
       According  to  POSIX  1003.1c, a successful exec* in one of the threads
       should terminate automatically all other threads in the program.   This
       behavior   is   not   yet   implemented   in   LinuxThreads.    Calling
       pthread_kill_other_threads_np before exec* achieves much  of  the  same
       behavior, except that if exec* ultimately fails, then all other threads
       are already killed.



                                 LinuxThreads PTHREAD_KILL_OTHER_THREADS_NP(3)