相关疑难解决方法(0)

是否可以以"延迟"的方式捕获Ctrl + C信号并运行清理功能?

我想捕获从控制台发送的Ctrl+C(SIGINT)信号并打印出一些部分运行总计.

这在Golang有可能吗?

注意:当我第一次发布问题时,我很困惑Ctrl+CSIGTERM不是SIGINT.

signals go sigterm

191
推荐指数
5
解决办法
9万
查看次数

Golang捕获信号

我想在Go中实现一个"进程包装器".基本上它会做什么,是启动一个进程(比如节点服务器)并监视它(捕获信号,如SIGKILL,SIGTERM ...)

我认为要做的方法是使用syscall.Exec以下命令在go例程中启动节点服务器:

func launchCmd(path string, args []string) {
  err := syscall.Exec(path, args, os.Environ())
  if err != nil {
    panic(err)
  }
}
Run Code Online (Sandbox Code Playgroud)

然后我想捕获由执行的命令生成的每个可能的信号syscall.我是Go的新手,任何帮助都会受到赞赏.

signals system-calls go

19
推荐指数
2
解决办法
3万
查看次数

标签 统计

go ×2

signals ×2

sigterm ×1

system-calls ×1