vil*_*pam 4 c++ macos daemon launchd execve
是否可以从 launchd 守护进程使用execve ?我想将进程制作成守护进程,然后使用 fork() 和 execve 启动多个子进程,但创建 launchd 守护进程的文档指出“调用 fork 后跟 exec”是不行的。这是否意味着我无法从守护进程创建子进程?
AFAIK,你可以 fork 并执行。关键点在于:“你不能分叉你的进程并让父进程退出。” 事实是,launchd“监视”你的服务。如果您的服务退出,它将重新启动。这意味着它也可能不会守护进程(对于守护进程,我的意思是经典生成一个新进程,创建一个新进程组,退出父进程,子进程存在于方案中)。
我想你应该确保在退出主进程之前杀死/退出你的子进程,只是为了不乱扔环境。
| 归档时间: |
|
| 查看次数: |
1720 次 |
| 最近记录: |