setsid

setsidsetsidsetsid命令linux常用的命令setsid命令的一般格式:setsid();说明:当进程是会话组长时setsid()调用失败。但第一点已经保证进程不是会话组长。setsid()调用成功后,进程成为新的会话组长和新的进程组长,并与原来的登录会话和进程组脱离。由于会话过程对控制终端的

大家好,欢迎来到IT知识分享网。setsid

setsid

  
setsid命令

linux常用的命令

setsid命令的一般格式:

setsid();

说明:当进程是会话组长时setsid()调用失败。但第一点已经保证进程不是会话组长。setsid()调用成功后,进程成为新的会话组长和新的进程组长,并与原来的登录会话和进程组脱离。由于会话过程对控制终端的独占性,进程同时与控制终端脱离。

pid_t pid = fork();

if (pid == 0) {

int result = execl(path, “adb”, “fork-server”, “server”, NULL);

} else {

// run a program in a new session

setsid();//之前parent和child运行在同一个session里,而且parent是session头,所以,

//所以作为session头的parent如果exit结束执行的话,那么会话session组中的所有进程将都被杀死,

//所以执行
setsid()之后,parent将重新获得一个新的会话session组id,child将仍持有原有的会话session组,

//这时parent退出之后,将不会影响到child了[luther.gliethttp].

}

setsid()的返回值:

成功:调用进程的会话ID;

失败:-1;

开放分类:
Linux C

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/30554.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信