在信号处理程序中调用exec()以重新加载当前正在运行的进程

时间:2019-10-11 20:44:43

标签: linux linux-kernel signals

从当前进程的信号处理程序中调用exec()时,是否为场景定义了行为? -例如,有一个for处理程序,它为与当前正在运行的进程相同的二进制文件调用exec()以重新加载自身。

1 个答案:

答案 0 :(得分:0)

是的,行为已定义且安全。

exec*函数家族(但值得注意的是,排除“ path”变体execlpexecvp)对于以下情况而言是异步信号安全的: Signal Actions in § 2.4.3在POSIX.1-2017中。