func main() { c := make(chan os.Signal) signal.Notify(c, os.Interrupt, os.Kill) var once sync.Once go func() { for { sig := <-c once.Do(clearTempObjects) fmt.Fprintf(os.Stderr, "\nExiting because of %q signal.\n", sig) exitCode := 1 if sysSig, ok := sig.(syscall.Signal); ok { exitCode = int(sysSig) } os.Exit(exitCode + 128) } }() commands.Run() lfs.LogHttpStats() once.Do(clearTempObjects) }
func main() { commands.Run() lfs.LogHttpStats() }