现在的位置: 首页 > 综合 > 正文

linux fork 两个返回值的问题

2013年11月16日 ⁄ 综合 ⁄ 共 313字 ⁄ 字号 评论关闭

linux fork 两个返回值的问题:

pid_t pid;
pid = fork();
一般书上都说有两个返回值给pid
其实正确的理解不是两个返回值,而是调用fock后,运行的是两个进程,pid也就有了两份,一份是子进程的,pid值为0,一份是父进程,pid为子进程的id
比如按下面写代码:
pid_t pid=0;
          printf("pid:%d,cur proc id:%d\n",pid,getppid());//这里会打印一次
pid = fork();
          printf("pid:%d,cur proc id:%d\n",pid,getppid());//这里是两个进程并行,会打印两次,并且pid和getppid()的值都会不同

抱歉!评论已关闭.