gpt4 book ai didi

UNIX 进程 : fork() and wait()

转载 作者:行者123 更新时间:2023-12-04 06:01:36 25 4
gpt4 key购买 nike

这是我在 fork() 上的问题和各自的wait()将要发生:

在我的 main() ,我调用一个函数,比如说function()使用 fork()系统调用,但我想要 function()无需等待 child 终止即可返回,因此 main()在终止之前必须等待他们。

那么,main() 有可能吗?调用wait()在 children 上fork()在另一个名为 my this main() 的函数的主体中编辑?

如果是,我是否必须将 child 的 pid 传递给 main()通过变量?

最佳答案

如果我正确地回答了这个问题,你想要这样的东西:

  • main来电function
  • function来电fork创建子进程,并在父进程中返回
  • main稍后调用wait关于 child /仁

  • 这很好……名义上,您不必将 child 的 PID 传回 main。 , 因为你可以直接调用 wait获取恰好存在的任何子进程;但是,要使用 waitidwaitpid ,您需要/想要将它们备份到 main .您可以将 PID 返回到 main在链表或以 NULL 结尾的数组之类的结构中,或创建某种文件范围或全局变量来包含列表。
    wait(2) 的 Linux 手册页中有一个很好的分割。 ( man 2 wait左右)

    关于UNIX 进程 : fork() and wait(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8854801/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com