2 Commits

Author SHA1 Message Date
eleksir
b36f1fd7d7 Add sig{quit,term,int} handler that just quits application 2024-04-22 23:05:07 +03:00
eleksir
87361a4e6c Fix comment 2024-04-22 23:04:17 +03:00
3 changed files with 8 additions and 2 deletions

View File

@@ -112,7 +112,10 @@ func main() {
go sigHandler() go sigHandler()
signal.Notify(sigChan, signal.Notify(sigChan,
syscall.SIGUSR1, syscall.SIGUSR1,
syscall.SIGUSR2) syscall.SIGUSR2,
syscall.SIGQUIT,
syscall.SIGTERM,
syscall.SIGINT)
// Populate memory stats // Populate memory stats
if Conf.Mem.Enabled { if Conf.Mem.Enabled {

View File

@@ -25,6 +25,9 @@ func sigHandler() {
UpdateReady <- true UpdateReady <- true
case syscall.SIGQUIT, syscall.SIGTERM, syscall.SIGINT:
os.Exit(0)
// We have signal that we're not interested in, so make a new loop iteration. // We have signal that we're not interested in, so make a new loop iteration.
default: default:
continue continue

View File

@@ -11,7 +11,7 @@ import (
// RunChan to this channel we send command and its argv to execute as separate process. // RunChan to this channel we send command and its argv to execute as separate process.
var RunChan = make(chan []string, 128) var RunChan = make(chan []string, 128)
// Spawn forks and execs given program, and also detaches form its control tty. // Spawner forks and execs given program, and also detaches form its control tty.
func Spawner() { func Spawner() {
for prg := range RunChan { for prg := range RunChan {
devnullR, _ := os.Open(os.DevNull) devnullR, _ := os.Open(os.DevNull)