Initial 2024-01-26
This commit is contained in:
84
cmpSnipper/cmpSnipperSignal.go
Normal file
84
cmpSnipper/cmpSnipperSignal.go
Normal file
@@ -0,0 +1,84 @@
|
||||
|
||||
package cmpSnipper
|
||||
|
||||
import (
|
||||
"os"
|
||||
"os/signal"
|
||||
"syscall"
|
||||
)
|
||||
|
||||
func (app *App) WaitSignal(term chan bool) {
|
||||
var sigreq = make(chan os.Signal, 1)
|
||||
|
||||
for true {
|
||||
signal.Notify(sigreq)
|
||||
sigrcv := <-sigreq
|
||||
|
||||
// app.Log("Got signal: %s", sigrcv)
|
||||
|
||||
if sigrcv == syscall.SIGTERM {
|
||||
term <- true
|
||||
// continue
|
||||
return
|
||||
}
|
||||
|
||||
if sigrcv == syscall.SIGINT {
|
||||
term <- true
|
||||
// continue
|
||||
return
|
||||
}
|
||||
|
||||
if sigrcv == syscall.SIGQUIT {
|
||||
term <- true
|
||||
// continue
|
||||
return
|
||||
}
|
||||
|
||||
if sigrcv == syscall.SIGUSR1 {
|
||||
app.Log("Got signal: %s", sigrcv)
|
||||
continue
|
||||
}
|
||||
|
||||
if sigrcv == syscall.SIGUSR2 {
|
||||
app.Log("Got signal: %s", sigrcv)
|
||||
|
||||
app.Log("Rand 4d: %d", app.Rand4d)
|
||||
|
||||
continue
|
||||
}
|
||||
|
||||
// 1) SIGHUP
|
||||
// 2) SIGINT
|
||||
// 3) SIGQUIT
|
||||
// 4) SIGILL
|
||||
// 5) SIGTRAP
|
||||
// 6) SIGABRT
|
||||
// 7) SIGBUS
|
||||
// 8) SIGFPE
|
||||
// 9) SIGKILL
|
||||
// 10) SIGUSR1
|
||||
// 11) SIGSEGV
|
||||
// 12) SIGUSR2
|
||||
// 13) SIGPIPE
|
||||
// 14) SIGALRM
|
||||
// 15) SIGTERM
|
||||
// 16) SIGSTKFLT
|
||||
// 17) SIGCHLD
|
||||
// 18) SIGCONT
|
||||
// 19) SIGSTOP
|
||||
// 20) SIGTSTP
|
||||
// 21) SIGTTIN
|
||||
// 22) SIGTTOU
|
||||
// 23) SIGURG
|
||||
// 24) SIGXCPU
|
||||
// 25) SIGXFSZ
|
||||
// 26) SIGVTALRM
|
||||
// 27) SIGPROF
|
||||
// 28) SIGWINCH
|
||||
// 29) SIGIO
|
||||
// 30) SIGPWR
|
||||
// 31) SIGSYS
|
||||
|
||||
app.Log("Got signal: %s", sigrcv)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user