pthread_kill_other_threads_np(3)

PTHREAD_KILL_OTHER_THREADS_NP(3) Руководство программиста Linux PTHREAD_KILL_OTHER_THREADS_NP(3)

ИМЯ

pthread_kill_other_threads_np - завершает все остальные нити процесса

ОБЗОР

#include <pthread.h>
void pthread_kill_other_threads_np(void);

ОПИСАНИЕ

Функция pthread_kill_other_threads_np() эффективна только в реализации нитей LinuxThreads. В этой реализации вызов данной функции приводит к немедленному завершению всех нитей приложения, кроме той, из которой вызвана функция. Состояние и тип отмены завершаемых нитей игнорируются, а очищающие обработчики не вызываются.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

Интерфейс Атрибут Значение
pthread_kill_other_threads_np() Безвредность в нитях MT-Safe

СООТВЕТСТВИЕ СТАНДАРТАМ

Эта функция является нестандартным расширением GNU, о чём свидетельствует наличие суффикса «_np» (nonportable).

ЗАМЕЧАНИЯ

Функция pthread_kill_other_threads_np() предназначена для вызова из нити execve(2) или подобной функции. Она разработана для преодоления ограничения в устаревшей реализации LinuxThreads, где нити приложения не завершаются автоматически (как того требуется в POSIX.1-2001) при execve(2).

В реализации нитей NPTL функция pthread_kill_other_threads_np() также существует, но ничего не делает (делать ничего не нужно, так как реализация правильно работает во время execve(2)).

СМОТРИТЕ ТАКЖЕ

execve(2), pthread_cancel(3), pthread_setcancelstate(3), pthread_setcanceltype(3), pthreads(7)

2017-09-15 Linux