go 使用signal包进行信号的监听基础

package main

import (
    "context"
    "fmt"
    "os"
    "os/signal"
    "time"
)

func main(){
    c:=make(chan os.Signal)
    signal.Notify(c)
    go func() {
        for  {
            fmt.Println(12)
            time.Sleep(1e9)

        }
    }()

    go func() {
        time.AfterFunc(5e9, func() {
            c<-os.Interrupt
        })
    }()

    go func() {
        ctx, _ := context.WithTimeout(context.Background(), 4e9)

        <-ctx.Done()
        c<-os.Kill


        //select {
        //    case <-ctx.Done():
        //        c<-os.Kill
        //}
    }()
    sig:=<-c


    fmt.Println(sig)//^Cinterrupt

}

您可以自由的转载和修改,但请务必注明文章来源并且不可用于商业目的。
本站大部分内容收集于互联网,如果有侵权内容、不妥之处,请联系删除。敬请谅解!

  Previous post syslog-ng 远程收集日志
Next post   无聊抓包玩

  关于博主【WANG-FEiHU】

Duplicate
-----------Complicate
--------------------------Appreciate
----------------------------------------[Fate]
-----------------------------------------------Elevate

三人行 有吾师

-------------花有重开日 梦无止境时-------------

  分类目录

  monitor(TD)

青春就是用来追忆的,当你怀揣着它时,它一文不值,只有将它耗尽后,再回过头看,一切才有了意义,爱过我们的人和伤害过我们的人,都是我们青春存在的意义。

在这有限的时间里,我们应该珍惜生命,珍惜机会,更要珍惜那得之不易的时间。因那滴答做响的时间脚步,一旦走过,再不回头。

要打败任何事情得先学会打败自己。

我会把每一次改变当做成长,哪怕是痛也值得。

时无英雄,使竖子成名

少年不识愁滋味,爱上层楼。爱上层楼。为赋新词强说愁。而今识尽愁滋味,欲说还休。欲说还休。却道天凉好个秋。