如何使进程自动进入后台执行?
我想让一个我自己写的一个后台进程自动进入后台执行,就像 nginx 命令一样,使用nginx start
后,进程自动进入后台,让出终端
。
进程执行后再使用 ps 命令查询时,显示为nginx start
这种。
自己有一个方法:
- 阻止进程的正常执行。
- 开启进程后,让进程再使用 nohup 开启一个子进程,并传入一个特殊参数使程序能正常执行。
- 修改这个子进程的名字。
- 退出父进程。
只是感觉方法有点不伦不类,求问有没有优雅点的方式。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这个其实很简单,你就是想实现一个守护进程。实现守护进程的方式有两种,一种在自己实现,一种是调用系统函数。
先说第二种系统调用,demo代码如下:
现在让我们来看自己如何实现,实现守护进程的步骤如下:
demo代码如下:
我觉得你没必要这么麻烦,现代化的系统都有服务管理功能,把程序按照服务方式运行就可以了,根本就不用自己去写一个daemon