TCGETPGRP(3) | Linux Programmer's Manual | TCGETPGRP(3) |
名前¶
tcgetpgrp, tcsetpgrp - 端末のフォアグラウンドプロセスグループの 取得/設定を行う
書式¶
#include <unistd.h>
pid_t tcgetpgrp(int fd);
int tcsetpgrp(int fd, pid_t pgrp);
説明¶
関数 tcgetpgrp() は、 fd に対応する端末のフォアグラウンドプロセスグループの プロセスグループ ID を返す。 fd で指定された端末は、呼び出しを行うプロセスの制御端末でなければならない。
関数 tcsetpgrp() は、プロセスグループID が pgrp のプロセスグループを fd に対応する端末のフォアグラウンドプロセスグループにする。 このとき、 fd は tcsetpgrp() を呼び出すプロセスの制御端末でなければならない。 さらに、 pgrp は、呼び出しを行うプロセスと同じセッションに 属する (メンバが空でない) プロセスグループでなければならない。
tcsetpgrp() がセッションに属するバックグラウンドグループプロセスのメンバから 呼び出され、かつ呼び出しを行うプロセスが SIGTTOU をブロックしたり 無視したりするようになっていない場合、 SIGTTOU シグナルは バックグラウンドプロセスグループの全てのメンバに送られる。
返り値¶
fd が呼び出しを行ったプロセスの制御端末を参照している場合、関数 tcgetpgrp() は、その制御端末のフォアグラウンドプロセスグループがあれば そのプロセスグループの ID を返す。 そのようなプロセスグループがなければ、現在プロセスグループ ID として使用されていない、1より大きな何らかの値が返される。 fd が呼び出しを行ったプロセスの制御端末を参照していない場合、 -1 が返され、 errno が適切に設定される。
成功した場合、 tcsetpgrp() は 0 を返す。そうでない場合、 -1 を返し、 errno を適切に設定する。
エラー¶
属性¶
この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース | 属性 | 値 |
tcgetpgrp(), tcsetpgrp() | Thread safety | MT-Safe |
準拠¶
POSIX.1-2001, POSIX.1-2008.
注意¶
この関数は TIOCGPGRP と TIOCGSID の ioctl 経由で実現されている。
歴史¶
これらの ioctl は 4.2BSD で登場した。 これらの関数は POSIX で考案されたものである。
関連項目¶
この文書について¶
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。
2015-08-08 | GNU |