fengyejushi 2014-10-16 11:49
浏览 947

关于与子进程与父进程

下面是我实验的一段代码,结果产生了,无限的输出。我的推测是子进程从f返回时,f的栈帧出栈,从而当子进程结束时。父进程由于f出栈从而又从新执行了main,从而产生无限输出。求教???????????

#include
#include

void f()
{
if(vfork()<0)
{
perror("fork");
}

}

int
main(int argc,char * argv[])
{
pid_t pid;
pid=getpid();
printf("pid=%d\n",pid);
f();
if(getpid()!=pid)
{
printf("pid=%d\n",getpid());
}
else
{
printf("pid=%d\n",getpid());
}
return 0;
}

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥30 vmware exsi重置后登不上
    • ¥15 易盾点选的cb参数怎么解啊
    • ¥15 MATLAB运行显示错误,如何解决?
    • ¥15 c++头文件不能识别CDialog
    • ¥15 Excel发现不可读取的内容
    • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
    • ¥20 yolov5自定义Prune报错,如何解决?
    • ¥15 电磁场的matlab仿真
    • ¥15 mars2d在vue3中的引入问题
    • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面