许多程序允许以守护进程模式(通常是默认模式)运行,或者使用诸如-f的标志在前台显式运行它。
现在当configuration新贵运行这样的程序,我可以做
exec foo -f # run in foreground
要么
expect fork exec foo # automatically runs as a daemon
有没有理由select一个呢? 我觉得在前台运行一切都要容易得多,让新手能够处理这些stream程,但这有什么不利之处?
我强烈喜欢在前台运行的东西; 它避免了守护进程可能产生的任何复杂情况(例如,长期运行的守护进程的新起点丢失踪迹)。 唯一的例外是less数的守护程序,它有不愉快的习惯,把“请在前台运行”解释为“请运行在某种性能不佳的debugging模式”,做一些愚蠢的事情,比如只运行一个线程,或者不产生童工,或者这样的。