stick/platformall.go

32 lines
574 B
Go

// +build !windows
package main
import (
"log"
"os"
"os/signal"
"syscall"
)
func registerSignalHandlers() {
sigc := make(chan os.Signal, 1)
signal.Notify(sigc, syscall.SIGUSR1, syscall.SIGUSR2)
go func() {
for sig := range sigc {
switch sig {
case syscall.SIGUSR1:
// TODO: Reload config
case syscall.SIGUSR2:
log.Println("Compacting notebooks...")
stick.NotebooksLock.Lock()
for _, notebook := range stick.Notebooks {
notebook.Compact()
}
stick.NotebooksLock.Unlock()
log.Println("Compacted notebooks")
}
}
}()
}