4

是否可以从 launchd 守护进程中使用execve ?我想成为守护进程的进程使用 fork() 后跟 execve 启动了几个子进程,但是创建启动守护进程的文档指出“调用 fork 后跟 exec”是不行的。这是否意味着我不能从守护进程创建子进程?

4

1 回答 1

4

AFAIK,你可以 fork 和 exec 就好了。关键点是这一点:“你不能分叉你的进程并让父进程退出。” 问题是,启动“监视”您的服务。如果您的服务退出,它会重新启动。这意味着它也可能不会守护进程(守护进程是指经典生成一个新进程,创建一个新进程组,退出父进程,子进程存在于方案中)。

我想你应该确保在退出主进程之前杀死/退出你的子进程,只是为了不乱扔环境。

于 2011-03-10T13:34:25.663 回答