KILLPG(2)

名称
killpg - プロセスグループにシグナルを送信する

ライブラリ
libc

書式
<sys/types.h> <signal.h> int killpg(pid_t pgrp, int sig)

解説
killpg() 関数は、プロセスグループ pgrp にシグナル sig を送信します。 シグナルのリストについては sigaction(2) を参照してください。 pgrp が 0 の場合、 killpg() は、送信側プロセスのプロセスグループにシグナルを送信します。

送信側プロセスとプロセスグループのメンバが同じ実効ユーザ ID を持つか、 または送信側がスーパユーザである必要があります。 唯一の特殊なケースとして、継続シグナル SIGCONT は、 現在のプロセスの子孫であればどのプロセスにでも送信できます。

戻り値

エラー
killpg() 関数は、次の場合に処理に失敗し、シグナルは送信されません:

[EINVAL]
    sig 引数が有効なシグナル番号ではありません。

[ESRCH]
    pgrp で指定したプロセスグループ内にプロセスが見つかりません。

[ESRCH]
    プロセスグループとして 0 が指定されましたが、送信側プロセスに プロセスグループがありません。

[EPERM]
    送信側プロセスがスーパユーザでなく、1 つ以上のターゲットプロセスの 実効ユーザ ID が送信側プロセスの実効ユーザ ID と異なっています。

関連項目
getpgrp(2), kill(2), sigaction(2)

歴史
killpg() 関数は 4.0BSD ではじめて登場しました。