github.com/stevenmatthewt/agent@v3.5.4+incompatible/signalwatcher/watcher_windows.go (about)

     1  package signalwatcher
     2  
     3  import (
     4  	"os"
     5  	"os/signal"
     6  )
     7  
     8  func Watch(callback func(Signal)) {
     9  	signals := make(chan os.Signal, 1)
    10  	signal.Notify(signals, os.Interrupt)
    11  
    12  	go func() {
    13  		<-signals
    14  
    15  		go callback(QUIT)
    16  		Watch(callback)
    17  	}()
    18  }