killpg()

Отправить сигнал группе процессов

Прототип:

#include <sys/types.h>
#include <signal.h>
int killpg( pid_t pgrp,
int sig );

Аргументы:

pgrp
ID группы процессов, которым будет отправлен сигнал.
sig
0, или сигнал, который будет отправлен. Полный список сигналов представлен в POSIX signals.

Библиотека:

libc

Описание:

Функция killpg() отправляет сигнал sig группе процессов, c заданным pgrp. Если sig равен 0, сигнал не отправляется, но pgrp всё ещё проверяется на допустимость.

Если pgrp больше чем 1, вызов killpg( pgrp, sig ) эквивалентен вызову kill( −pgrp, sig ).

Возвращаемое значение:

0
Успешное завершение.
-1
Возникла ошибка. Код ошибки записан в errno.

Коды ошибок:

EAGAIN
Недостаточно системных ресурсов для передачи сигнала.
EINVAL
Сигнал sig недопустим или не поддерживается.
EPERM
Процесс не имеет прав на отправку сигналов ни одному из указанных процессов.
ESRCH
Процессы с заданным pgrp не были обнаружены или pgrp меньше или равен 1.

Примеры:

См. sigprocmask()

Классификация:

POSIX 1003.1 X/Open Systems Interfaces Extension

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

getpid(), kill(), setsid(), sigaction(), signal(), SignalKill(), sigqueue()




Предыдущий раздел: Описание API системной библиотеки