server.go
455 Bytes
package main
import (
"os"
"os/signal"
"pro2d/components/net"
"pro2d/conf"
"pro2d/utils"
"syscall"
)
func main() {
err := make(chan error)
stopChan := make(chan os.Signal)
signal.Notify(stopChan, syscall.SIGTERM, syscall.SIGINT, syscall.SIGKILL)
s := net.NewServer(conf.GlobalConf.GameConf)
go func() {
err <- s.Start()
}()
select {
case e := <- err:
utils.Sugar.Errorf("game server error: %v", e)
case <-stopChan:
s.Stop()
}
}