SETSID(2)

名称
setsid - セッションを作成しプロセスグループ ID を設定する

ライブラリ
libc

書式
<unistd.h> pid_t setsid(void)

解説
setsid() 関数は新しいセッションを作成します。呼び出しセッションは新しい セッションのセッションリーダであり、新しいプロセスグループの プロセスグループリーダで、制御端末はありません。 呼び出しプロセスは、セッションまたは プロセスグループのどちらかにある唯一のプロセスです。

戻り値
正常に完了すると、 setsid() 関数は、新しいプロセスグループのプロセスグループ ID の値を返します。 これは呼び出しプロセスのプロセス ID と同じです。エラーが起きると、 setsid() は -1 を返し、エラーを示すためにグローバル変数 errno を設定します。

エラー
setsid() 関数は次の場合に処理を失敗します。

[EPERM]
    呼び出しプロセスが既にプロセスグループリーダであるか、 または呼び出しプロセス以外のプロセスのプロセスグループ ID が 呼び出しプロセスのプロセス ID と一致します。

関連項目
setpgid(2), tcgetpgrp(3), tcsetpgrp(3)

規格
setsid() 関数は p1003.1-90 仕様に準拠しています。