我正在尝试找到一种方法来从我的程序中启动一个自定义守护进程。该守护进程本身是使用双重分叉机制实现的,如果直接启动,则可以正常工作。
到目前为止,我已经了解到了各种启动守护进程的方法:
- 创建一个init脚本并将其安装到init.d目录中。
- 使用start-stop-daemon命令启动程序。
- 创建.desktop文件并将其放置在其中一个自动启动路径中。
前两种方法已知可以使用命令行启动服务,而第三种方法是用于在用户登录时自动启动服务(或任何其他应用程序)。
到目前为止,我猜测可以使用exec()函数族直接执行程序,或者可以通过system()函数执行'start-stop-daemon'命令。
是否有更好的方法来启动/停止服务呢?
exec()
调用启动/停止脚本才是预期的方法。 - Alfe