gpt4 book ai didi

c++ - 我如何让一个进程在 linux 中重新加载自己?

转载 作者:太空狗 更新时间:2023-10-29 23:21:20 27 4
gpt4 key购买 nike

我有一个服务,比如 foo,是用 C++ 编写的,它以 root 身份运行。有通常的脚本,/etc/init.d/foo start|stop|restart。

在某些时候,foo 需要重新加载自己。通常在升级完成后。但是做这样的事情:

system("/etc/init.d/foo restart")

不起作用,因为一旦重新启动杀死 foo,system() 调用显然也被杀死,并且重新启动脚本永远不会执行完成。

我可以使用另一个调用来代替 system() 作为调用进程的同级异步运行,而不是创建一个同步子进程吗?

谢谢!

最佳答案

您是否考虑过 exec[*] 系列?这是一个 -- execve .

关于c++ - 我如何让一个进程在 linux 中重新加载自己?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/627319/

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