|
发表于 2003-6-13 12:32:00
|
显示全部楼层
如果这样说,那五个子进程返回父进程的pid都不等于零,而五个子进程的 pid都等于零,那我还怎么判断这五个子进程啊?可不可以是:
- #define NUMBER 5
- ……
- int i;
- pid_t pid[NUMBER];
- for(i = 0; i < NUMBER; i++){
- if((pid[i] = fork()) < 0)
- perror("fork() failed");
- else if(pid[i] == 0){
- …… /* 子进程 */ 这是的子进程要如果区别?
- }
- }
复制代码
比如我要创建两个并行进程,一个打印第一子进程,一个 打印第二子进程。能不能这样:
- pid_t pid;
- for(i=0;i<2;i++)
- if((pid[i]=fork())<0)
- perror("fork error!");
- else
- if(pid[i]==0)
- swich(i) {
- case 0: printf("This is the first child procedure");
- case 1: printf("This is the second child procedure");
- }
复制代码 |
|