+ -
当前位置:首页 → 问答吧 → 谁能帮我分析一下这个C代码?谢谢!一位银行的专家竟说有漏洞

谁能帮我分析一下这个C代码?谢谢!一位银行的专家竟说有漏洞

时间:2010-12-10

来源:互联网

我还只是个菜鸟
求各位大大指导

其实还是关于fork() 的问题

题目的要求是请你用fork()创建子进程的方法
创建尽可能多的子进程,并显示进程数

这是我之前的代码,希望各位能指导下

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>

int i = 0;
int main() {
int pid = fork();
while(pid == 0){
i ++;
printf("我是第 %d 个子进程,我的进程id是 %d\n", i, getpid());
pid = fork();
}
if(pid == -1){
printf("捕获异常,此时已经新建了 %d 个子进程\n", i);
exit(1);
}
else if(pid > 0){
//printf("我是父进程,我的进程id是 %d\n", getpid());
}
return 0;
}

作者: free23king   发布时间: 2010-12-10

其实我也不熟,估计是要用到原子把全局计数器操作加法

你自己参考《linux 系统编程》这本书吧,说得挺详细的,网上有中文的pdf,非常好用

作者: fanhe   发布时间: 2010-12-12