Exemplo n.º 1
0
func handleSignal(app tunnel.Service) {
	c := make(chan os.Signal, 1)
	signal.Notify(c, syscall.SIGHUP)

	for sig := range c {
		switch sig {
		case syscall.SIGHUP:
			app.Status()
			tunnel.Log("total goroutines:%d", runtime.NumGoroutine())
		default:
			tunnel.Log("catch signal:%v, exit", sig)
			os.Exit(1)
		}
	}
}