当前位置: 技术问答>linux和unix
wait()操作
来源: 互联网 发布时间:2017-01-28
本文导语: 请问下面的程序能否实现,创建4个子进程,每个子进程都打印“HELLO”后立刻终止,父进程等待4个子进程都终止后,打印“BYE”,然后终止 main() { int sv; if (fork() == 0) { /* 第一个子进程 */ ...
请问下面的程序能否实现,创建4个子进程,每个子进程都打印“HELLO”后立刻终止,父进程等待4个子进程都终止后,打印“BYE”,然后终止
main()
{
int sv;
if (fork() == 0) { /* 第一个子进程 */
printf(”HELLOn”); /* 打印 */
exit(0); /* 进程终止 */
} else if (fork() == 0) { /* 第二个子进程 */
printf(”HELLOn”); /* 打印 */
exit(0); /* 进程终止 */
}else if(fork()==0){
printf(”HELLOn”); /* 打印 */
exit(0);
}else if(fork()==0){
printf(”HELLOn”); /* 打印 */
exit(0);
}
wait(&sv); wait(&sv); wait(&sv);wait(&sv);/* 父进程等待两个子进程终止 */
printf(”BYEn”);
}
main()
{
int sv;
if (fork() == 0) { /* 第一个子进程 */
printf(”HELLOn”); /* 打印 */
exit(0); /* 进程终止 */
} else if (fork() == 0) { /* 第二个子进程 */
printf(”HELLOn”); /* 打印 */
exit(0); /* 进程终止 */
}else if(fork()==0){
printf(”HELLOn”); /* 打印 */
exit(0);
}else if(fork()==0){
printf(”HELLOn”); /* 打印 */
exit(0);
}
wait(&sv); wait(&sv); wait(&sv);wait(&sv);/* 父进程等待两个子进程终止 */
printf(”BYEn”);
}
|
可以啊.
父进程每一次返回都继续走下一个if分支.
父进程每一次返回都继续走下一个if分支.
|
wait的参数是status,不是pid..
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。