anylink/main.go

40 lines
623 B
Go

package main
import (
"fmt"
"os"
"os/signal"
"syscall"
"github.com/bjdgyc/anylink/common"
"github.com/bjdgyc/anylink/handler"
)
var COMMIT_ID string
func main() {
common.CommitId = COMMIT_ID
common.InitConfig()
handler.Start()
signalWatch()
}
func signalWatch() {
fmt.Println("Server pid: ", os.Getpid())
sigs := make(chan os.Signal, 1)
signal.Notify(sigs, syscall.SIGINT, syscall.SIGTERM, syscall.SIGALRM, syscall.SIGUSR2)
for {
sig := <-sigs
fmt.Printf("Get signal: %v \n", sig)
switch sig {
case syscall.SIGUSR2:
// reload
fmt.Println("reload")
default:
// stop
return
}
}
}