这个是另一个库的升级版 xdaemon
支持 linux 和 Windows, 已测试 Ubuntu22.04, windows10
- fork 功能: 把go的cli程序自身, 按原样参数另起一个进程
- xprocess.Fork(): 抛弃子进程所有输出(stdout, stderr)
- xprocess.Fork2Log():子进程所有输出写入到指定日志文件
- xprocess.Fork2Std():子进程所有输出输出到父进程输出
- xprocess.AlwaysFork2Log(): 子进程所有输出写入到指定日志文件, 子进程若退出了总是再启动一个
- xprocess.AlwaysFork2Std():子进程所有输出输出到父进程输出, 子进程若退出了总是再启动一个
- xprocess.AlwaysFork():子进程所有输出输出到父进程输出, 子进程若退出了总是再启动一个
- 支持无限级 fork, 也就是子进程还可以 fork 子进程
- 支持灵活自定义, 可组合以上功能以及其它
- Windows下子进程自动隐藏命令行窗口
- 子进程可脱离父进程运行, 不受父进程退出的影响
- 信号监听: 封装标准库 signal 方便使用
- 进程唯一性检查和处理
- xprocess.UniqueCheckAndKillOld(flag string, onKill func()) : 检查进程唯一性,若不唯一则让旧进程退出(软kill)
- xprocess.UniqueCheck(flag string) bool : 检查进程是否唯一, 可用于新进程退出