免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3033 | 回复: 1
打印 上一主题 下一主题

setsid的用法? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-28 20:23 |只看该作者 |倒序浏览
setsid是使调用的进程(非进程组长),建立新的对话期(自己成为对话首进程)并放弃终端,该进程就不能进行标准输入和输出了嘛,例如在进行setsid后马上scanf.printf行吗      
#include"apue.h"
#include<fcntl.h>
#include <sys/types.h>
int
main()
{
        pid_t pid;
        int fd;
        char buf[3];
        int i;
        if ((pid = fork()) < 0)
        {
                perror("fork");
                exit(1);
        }

        if (pid == 0)
        {

                printf("%d\n",setsid());
                int n = read(0, buf, 3);
                write(1, buf, n);
                printf("%d,%d\n",getpid(),getpgrp());
        }
        else
        {
        wait(pid);
        printf("%d,%d\n",getpid(),getpgrp());
        }
        
}

论坛徽章:
0
2 [报告]
发表于 2009-01-03 00:03 |只看该作者
setsid如何测试其功能,有人给个小程序吧,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP