killpg(2) FreeBSD 一般コマンドマニュアル

killpg

前のページ 上に戻る 次のページ

killpg




書式

     #include <sys/types.h>
     #include <signal.h>

     int
     killpg(pid_t pgrp, int sig);


解説

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

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


戻り値

     関数 killpg() は、処理が成功すると値 0 を返します。そうでない場合、値 -1
     が返され、グローバル変数 errno が設定されてエラーを示します。


エラー

     killpg() は、次の場合に処理に失敗し、シグナルは送信されません。

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

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

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

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


関連項目

     getpgrp(2), kill(2), sigaction(2)


歴史

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

FreeBSD 4.4                      June 2, 1993                      FreeBSD 4.4

ABELNET VPSサービス