ИМЯ
killpg - послать сигнал группе процессовLIBRARY
Standard C library ( libc, -lc)СИНТАКСИС
#include <signal.h>
int killpg(int pgrp, int sig);
Требования
макроса
тестирования
свойств
для glibc (см.
feature_test_macros(7)):
killpg():
_XOPEN_SOURCE >= 500 || /* начиная с glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE
ОПИСАНИЕ
killpg() отправляет сигнал sig группе процессов pgrp. Список сигналов можно найти в signal(7). Если значение pgrp равно 0, то killpg() отправляет сигнал вызывающей группе процессов (в POSIX: если значение pgrp меньше или равно 1, то поведение не определено). Права, требуемые для отправки сигнала другому процессу, смотрите в kill(2).ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
On success, zero is returned. On error, -1 is returned, and errno is set to indicate the error.ОШИБКИ
- EINVAL
- В sig задан неправильный номер сигнала.
- EPERM
- Процесс не имеет достаточно прав для отправки сигнала ни одному из группы процессов-получателей. Требуемые права смотрите в kill(2).
- ESRCH
- В группе процессов pgrp нет ни одного процесса.
- ESRCH
- Номер группы процессов равен 0, но процесс-отправитель не входит ни в какую группу процессов.
СТАНДАРТЫ
POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD, ( killpg() впервые появился в 4BSD).ЗАМЕЧАНИЯ
There are various differences between the permission checking in BSD-type systems and System V-type systems. See the POSIX rationale for kill(3p). A difference not mentioned by POSIX concerns the return value EPERM: BSD documents that no signal is sent and EPERM returned when the permission check failed for at least one target process, while POSIX documents EPERM only when the permission check failed for all target processes.Отличия между библиотекой C и ядром
В Linux killpg() реализован в виде библиотечной функции, которая вызывает kill(-pgrp, sig).СМ. ТАКЖЕ
getpgrp(2), kill(2), signal(2), capabilities(7), credentials(7)ПЕРЕВОД
Русский перевод этой страницы руководства был сделан Alex Nik <[email protected]>, Azamat Hackimov <[email protected]>, Yuri Kozlov <[email protected]> и Иван Павлов <[email protected]> Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на [email protected]5 февраля 2023 г. | Linux man-pages 6.03 |