gpt4 book ai didi

python - 已注册的 atexit 处理程序是否由派生的子进程继承?

转载 作者:太空宇宙 更新时间:2023-11-03 13:24:56 25 4
gpt4 key购买 nike

我正在使用 python 2.5 编写一个守护程序。在主进程中,退出处理程序在 atexit 模块中注册,似乎处理程序在每个子进程结束时被调用,这不是我所期望的。

我注意到 python atexit 文档中没有提到这种行为,有人知道这个问题吗?如果这是它的行为方式,我如何取消注册子进程中的退出处理程序? 3.0版本有个atexit.unregister,我用的是2.5。

最佳答案

当您fork 创建子进程时,该子进程是父进程的精确副本——当然包括已注册的退出函数以及所有其他代码和数据结构。我相信这就是您正在观察的问题 - 当然它并没有在每个模块中都提到,因为它必然适用于每个模块。

关于python - 已注册的 atexit 处理程序是否由派生的子进程继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1052716/

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