信号 – Golang:是否可以捕获Ctrl C信号并以“延迟”方式运行清除函数?

前端之家收集整理的这篇文章主要介绍了信号 – Golang:是否可以捕获Ctrl C信号并以“延迟”方式运行清除函数?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想捕获从控制台发送的Ctrl C(SIGINT)信号,并打印出一些部分运行总计。

这是可能在戈兰吗?

注意:当我第一次发布的问题,我困惑的Ctrl C是SIGTERM而不是SIGINT。

您可以使用 os/signal软件包处理输入信号。 ^ C是 SIGINT,所以你可以使用这个来捕获os.Interrupt。
c := make(chan os.Signal,1)
signal.Notify(c,os.Interrupt)
go func(){
    for sig := range c {
        // sig is a ^C,handle it
    }
}()

您使程序终止和打印信息的方式完全取决于您。

猜你在找的Go相关文章