Provided by: manpages-ru-dev_4.21.0-2_all bug

ИМЯ

       pthread_kill - посылает сигнал в нить

LIBRARY

       POSIX threads library (libpthread, -lpthread)

СИНТАКСИС

       #include <signal.h>

       int pthread_kill(pthread_t thread, int sig);

   Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

       pthread_kill():
           _POSIX_C_SOURCE >= 199506L || _XOPEN_SOURCE >= 500

ОПИСАНИЕ

       Функция  pthread_kill() посылает сигнал sig в thread — нить из того же процесса, что и вызвавший функцию.
       Сигнал доставляется thread асинхронно.

       Если sig равно 0, то сигнал не посылается, но выполняется проверка на ошибки.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       При успешном выполнении pthread_kill() возвращается 0; при ошибке возвращается номер ошибки и  сигнал  не
       посылается.

ОШИБКИ

       EINVAL Указан некорректный сигнал.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌─────────────────────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ ИнтерфейсАтрибутЗначение │
       ├─────────────────────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │ pthread_kill()                                                      │ Безвредность в нитях │ MT-Safe  │
       └─────────────────────────────────────────────────────────────────────┴──────────────────────┴──────────┘

СТАНДАРТЫ

       POSIX.1-2001, POSIX.1-2008.

ЗАМЕЧАНИЯ

       Область  действия  сигнала  — весь процесс: если установлен обработчик сигнала, то он будет вызван в нити
       thread, но если этот сигнал «stop», «continue» или «terminate», то это действие повлияет на весь процесс.

       Реализация sigaction() в glibc выдаёт ошибку (EINVAL) при  попытке  послать  сигналы  реального  времени,
       которые используются внутри реализации NPTL. Подробности смотрите в nptl(7).

       В  POSIX.1-2008  рекомендуется,  что  если  реализация  обнаруживает использование ID нити после её срока
       жизни, то pthread_kill() должна возвращать ошибку ESRCH. Реализация glibc возвращает эту ошибку в случае,
       когда обнаруживается некорректный ID  нити.  Но  также  заметим,  что  в  POSIX  говорится,  что  попытка
       использовать  ID  нити  с  завершённым  сроком  жизни  приводит  к  непредсказуемому поведению, и попытка
       использовать  некорректный  ID  нити  в  вызове  pthread_kill()  может  приводить,  например,  к   ошибке
       сегментирования.

СМ. ТАКЖЕ

       kill(2),   sigaction(2),   sigpending(2),  pthread_self(3),  pthread_sigmask(3),  raise(3),  pthreads(7),
       signal(7)

ПЕРЕВОД

       Русский перевод этой страницы руководства был сделан Alexey, Azamat Hackimov <azamat.hackimov@gmail.com>,
       kogamatranslator49   <r.podarov@yandex.ru>,   Kogan,   Max   Is   <ismax799@gmail.com>,    Yuri    Kozlov
       <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

       Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3
       или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо
       на man-pages-ru-talks@lists.sourceforge.net.

Linux man-pages 6.03                           15 декабря 2022 г.                                pthread_kill(3)