game.go
500 Bytes
package main
import (
"os"
"os/signal"
"pro2d/conf"
"pro2d/src/components/logger"
"pro2d/src/components/net"
"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:
logger.Error("game server error: %v", e)
case <-stopChan:
s.Stop()
logger.Debug("game stop...")
}
}