gpt4 book ai didi

unix - 前叉信号

转载 作者:行者123 更新时间:2023-12-04 13:15:10 25 4
gpt4 key购买 nike

什么是前叉中的信号行为。
是否应该在fork中继承所有信号?

最佳答案

至少在Linux下,信号处理程序本身是继承的,而不是未决的信号。

引用Linux fork(2) man page:

fork() creates a child process that differs from the parent process only in its PID and PPID, and in the fact that resource utilizations are set to 0. File locks and pending signals are not inherited.



这是有道理的,因为信号属于(父)进程。新创建的进程(大部分)是当前进程的副本,因此保留了信号处理程序。

尽管没有直接关系,但是通常在 exec()之后的 fork()类型调用将破坏所有信号处理程序,因为将全新的可执行文件加载到进程中(覆盖当前为信号提供服务的函数)。

关于unix - 前叉信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3227373/

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