创建子进程
Posted 五个板栗
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建子进程相关的知识,希望对你有一定的参考价值。
- 程序:只占用磁盘空间
- 进程:是运行起来的程序,占用内存、cpu等系统资源
- fork函数:create a child process
函数原型:pid_t fork(void); 父进程返回子进程的pid,子进程返回0;
int main(int argc,char *argv[])
printf("hello world\\n");
printf("hello\\n");
printf("bye\\n");
pid_t pid =fork();
if(pid==-1)
perror("fork error");
exit(1);
else if(pid==0)
printf("child is create\\n");
else if(pid>0)
printf("parent process:my child is %d\\n",pid);
printf("end of file\\n");
return 0;
- fork之前的代码之前的代码子进程没有机会执行,所以出现一次,fork之后的代码子进程也有机会执行,所以出现两次
循环创建子进程
int main()
int i;
pid_t pid;
for(i=0;i<5;i++)
if(fork()==0)
break;
if(i==5)
sleep(5);
printf("parent\\n");
else
sleep(1);
printf("%dth child\\n",i+1);
return 0;
printf("%d child\\n",i++);
以上是关于创建子进程的主要内容,如果未能解决你的问题,请参考以下文章