tkill

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



ИМЯ
       tkill, tgkill - посылает сигнал нити

ОБЗОР
       int tkill(int tid, int sig);

       int tgkill(int tgid, int tid, int sig);

       Замечание: В glibc нет обёрточных функций для этих системных вызовов;
       смотрите ЗАМЕЧАНИЯ.

ОПИСАНИЕ
       tgkill() отправляет сигнал sig нити с ID tid в группе нитей tgid. Для
       сравнения, kill(2) может быть использована только для отправки сигнала
       процессу (т.е., группе нитей) как единому целому и сигнал будет доставлен
       произвольной нити внутри этого процесса.

       Вызов tkill() — устаревший предшественник tgkill(). Он позволяет задавать
       только идентификатор нити-получателя, что может привести к уведомлению не
       той нити, если нить завершила работу и её идентификатор используется
       повторно. Не используйте данный системный вызов.

       Это вызовы интерфейса системного уровня, они предназначены для
       внутреннего использования в библиотеке нитей.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
       При успешном выполнении возвращается 0. В случае ошибки возвращается -1,
       а errno устанавливается в соответствующее значение.

ОШИБКИ
       EINVAL Указан некорректный идентификатор нити, группы или сигнал.

       EPERM  Отказано в доступе. См. kill(2) для получения подробностей о
              необходимом доступе.

       ESRCH  Не существует процесса с указанным идентификатором нити (и
              идентификатором группы).

ВЕРСИИ
       tkill() поддерживается начиная с Linux 2.4.19/2.5.4. tgkill() был
       добавлен в Linux 2.5.75.

СООТВЕТСТВИЕ СТАНДАРТАМ
       Вызовы tkill() и tgkill() есть только в Linux, и они не должны
       использоваться в переносимых программах.

ЗАМЕЧАНИЯ
       См. описание CLONE_THREAD в clone(2) для пояснения по поводу групп нитей.

       В glibc нет обёрток для этих системных вызовов; вызывайте их через
       syscall(2).

СМОТРИТЕ ТАКЖЕ
       clone(2), gettid(2), kill(2), rt_sigqueueinfo(2)



Linux                              2014-12-31                           TKILL(2)