将进程与终端解绑,转到后台运行,除此外,sylar还实现了双进程唤醒功能,父进程作为守护进程的同时会检测子进程是否退出,如果子进程退出,则会定时重新拉起子进程。

以下是守护进程的实现步骤:

  1. 调用daemon(1, 0)将当前进程以守护进程的形式运行;
  2. 守护进程fork子进程,在子进程运行主业务;
  3. 父进程通过waitpid()检测子进程是否退出,如果子进程退出,则重新拉起子进程;

  • 无标签