想实现终端执行程序,选择开启服务,退出程序后进程后台驻留。当要改变或停止服务操作时再执行程序。(像宝塔 BT 的 bt 那样) 问题是程序执行后退出时如何后台驻留?再次执行程序时不再启动新进程?是不是有现成的库可以用?
新手请教,请大佬指路,给几个关键词我去查,感谢!
想实现终端执行程序,选择开启服务,退出程序后进程后台驻留。当要改变或停止服务操作时再执行程序。(像宝塔 BT 的 bt 那样) 问题是程序执行后退出时如何后台驻留?再次执行程序时不再启动新进程?是不是有现成的库可以用?
新手请教,请大佬指路,给几个关键词我去查,感谢!
|
1
可以直接用 fork 开新的进程处理,关闭进程的话就在子进程监听信号即可
|
|
2
|
|
3
|
|
neoblackcapApr 19, 2022
4
你实际需要的可能是一个守护进程,以及一个与它交互的命令行客户端。
|
|
noneApr 19, 2022
5
supervisor 是不是你需要的?
|
|
zeusho871Apr 19, 2022 via Android
6
看看
nps 怎么实现的 |
|
littlezzllApr 19, 2022 via Android
7
systemd
|
|
yin1999Apr 19, 2022 via Android
8
推荐 systemd, screen ,前者适合做成服务,后者适合在后台跑脚本啥的
|
|
darknollApr 19, 2022
9
由部署实现,不要放在代码里面
|
|
MisakasApr 19, 2022
10
咱有一篇没写完的博文,说了 golang 对 service 提供的支持
https://www.misakas.com/default/register-the-window-service-with-a-go-program/ |
|
biubiuFApr 21, 2022
11
做一个 rpc 的 cli
|