gpt4 book ai didi

c - 是什么杀死了父进程?

转载 作者:行者123 更新时间:2023-11-30 14:38:55 29 4
gpt4 key购买 nike

这段代码中的父进程是什么结束的?我看没有看到他离开任何地方......我的一个 friend 说父进程没有结束/杀死,代码只是在最后一个退出(0)处停止。如果是这样的话,那么是什么将父进程从 sleep 中唤醒呢?预先感谢您

adghtesd

程序结果:

    parent: I'm the parent
child: I'm the child
child: I'm exiting
parent: child process (PID=1919) exited with value 123
parent: exiting
test

最佳答案

来自this POSIX reference on sleep :

If sleep() returns because the requested time has elapsed, the value returned shall be 0. If sleep() returns due to delivery of a signal, the return value shall be the "unslept" amount (the requested time minus the time actually slept) in seconds.

发生的情况是,当父进程收到 SIGCHLD 信号时,会导致 sleep 函数被中断,而父进程在 sleep 通话。

如果你想睡足量,你需要检查 sleep 返回什么,并循环调用 sleep 直到它返回 0 >.

关于c - 是什么杀死了父进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56340005/

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