SETSID
Section: Linux Programmer's Manual (2)
Updated: 1994-08-27
Index
JM Home Page
roff page
名前
setsid - セッション (session) を作成し、プロセス・グループ ID を設定する
書式
#include <unistd.h>
pid_t setsid(void);
説明
setsid()
は呼び出したプロセスがプロセス・グループ・リーダー
(process group leader) でなければ、新しいセッションを作成する。
呼び出したプロセスは新しいセッションのリーダー、新しいプロセス・グループの
プロセス・グループ・リーダーとなり、tty の制御を持たない。
呼び出したプロセスのプロセス・グループ ID とセッション ID には、
呼び出したプロセスの PID が設定される。呼び出したプロセスはこの
新しいプロセス・グループ、この新しいセッションの唯一のプロセスとなる。
返り値
呼び出したプロセスのセッション ID
エラー
エラーの場合は、-1 が返されて、
errno
が設定される。
起こりえるエラーは
EPERM
のみである。
呼び出したプロセスの PID と等しいプロセス・グループ ID を持つプロセスが
存在する場合に返される。これは、呼び出したプロセスが既に
プロセス・リーダーの場合には
setsid()
は失敗することを意味する。
準拠
SVr4, POSIX.1-2001.
注意
fork(2)
で作成された子プロセスは、親プロセスのセッション ID を継承する。
execve(2)
の前後でセッション ID は保存される。
プロセス・グループ・リーダーとは、そのプロセスのプロセス・グループ ID が
その PID に等しいプロセスである。
setsid()
を確実に成功させるためには、
fork(2)
して
exit(2)
し、子プロセスで
setsid()
を行なえば良い。
関連項目
setpgid(2),
setpgrp(2),
tcgetsid(3)
Index
- 名前
-
- 書式
-
- 説明
-
- 返り値
-
- エラー
-
- 準拠
-
- 注意
-
- 関連項目
-
This document was created by
man2html,
using the manual pages.
Time: 04:32:02 GMT, November 19, 2007