if(pid1=fork()==-1)
要改成
if((pid1=fork())==-1)
==的优先级高于=
同理
if(pid2=fork()==-1);
要改成
if((pid2=fork())==-1)
另外注意这个if后面的分号一定要去掉
int main()
{
int x=1;//数据是父子进程互相独立的
if(fork()==0) //这里是从子进程返回的
printf(“x=%d/n”,++x);//这句话只在子进程执行
printf(“x=%d/n”,--x);
exit(0);
}
子进程:
x=2
x=1
父进程:
x=0
问题一:父进程和子进程是用来描述继承上的关系。
比如在Windows下面有一个你的进程,进程名叫“林志玲”,然后你通过鼠标啊什么的把QQ启动了,这个QQ就是你的子进程"林志玲的QQ"。
问题二:首先进程是一个程序的完整的执行过程。至于为什么创建子进程可能有如下的原因
1:标识这个进程是属于谁的。
2:便于管理。可以一次性的把某些进程一起kill。
3:进程启动之前可能需要父进程为他做一些初始化一类的 *** 作。
问题三:线程是轻量级的进程。线程共享进程的所有资源。线程是可以占有CPU的最小单位。
迅雷应该就是多线程的。好处如下:
1创建线程的系统开销比创建进程的系统开销要小得多。
2多线程有利于多个tcp连接一起下载文件,或者文件分段,每个线程负责下载文件的一小部分。
多个部分同时下载。
以上就是关于用父进程创建两个子进程全部的内容,包括:用父进程创建两个子进程、问题: 分析下列的程序运行后,父进程和子进程的输出分别是什么、什么是父进程子进程为什么要创建子进程什么是线程,请结合常用的应用程序(qq迅雷之类)帮忙解答一下等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)