如何从正在运行另一个程序(在 while 循环中)的子进程(使用 exec 调用)返回父进程。
这里是示例代码
do
{
if(fork() == 0)
{
exec("running a program in while loop..")
}
else
{
wait();
printf("do you want to cont..\n"); // bk pt.
scanf(" %c",ch); //yes/no
}
}while(ch == 'y');
现在,如果我运行上面的 pgm..它执行 exec 并运行其他 pgm..但我想切换到父进程并从 wait(); 之后的语句继续。
最佳答案
您不需要“切换”,创建子级后,您将有两个线程并行执行(至少从逻辑上讲)。
如果子进程退出,父进程应继续执行 wait()
之后的代码,假设确实是对 <a href="http://linux.die.net/man/2/wait" rel="noreferrer noopener nofollow">wait()</a>
的有效调用功能。
关于c - 如何回到父进程......?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14154074/