|
|
1
4
我怀疑你是否需要这样做。任何支持fork()的操作系统,在进程退出时,也会自动从malloc()中释放分配,无论它是如何退出的(包括终止)。 确实存在C程序不在进程中运行的环境,在这种环境中,你必须非常小心退出时留下的东西。但是这些环境不是POSIX,也不支持fork()。就这点而言,他们可能不支持信号。如果你正在为任何这种不寻常的环境写作,请检查你的文档。..
|
|
|
2
0
我可能误解了什么,但SIGTERM之后,整个过程肯定会消失,带上你的变量? |
|
|
3
0
您可以使用exec从main启动子进程,而不是直接调用child()函数。使用命令行参数通知子程序在main中执行工作。然后,子进程将能够正确清理。 |