我有一个服务,比如 foo,用 C++ 编写,以 root 身份运行。有通常的脚本,/etc/init.d/foo start|stop|restart。
在某些时候, foo 需要重新加载自己。通常在升级完成后。但是做这样的事情:
system("/etc/init.d/foo restart")
不起作用,因为只要重新启动杀死 foo,system() 调用显然也会被杀死,并且重新启动脚本永远不会执行完成。
是否可以使用另一个调用来代替 system() 作为调用进程的同级异步运行,而不是创建同步子进程?
谢谢!