您的位置:首页 > 编程语言 > Go语言

我学xingo golang服务器之-xingo_demo server.go start

2017-07-14 17:46 471 查看
启动服务器:

go run server.go

我学xingo golang服务器之-xingo_demo server.go start

上三节分别讲解学习了,xingo服务器和客户端的协议处理,包括协议的生成,协议的解析和发送,最后又学习了xingo_demo_unity3d部分的同屏玩家的AI逻辑处理过程;

(例子里面的相对比较简单,如果有怪物,战斗AI过程就比较复杂了可以参考:http://blog.csdn.net/qinyuanpei/article/details/22748829

下面我们学习xingo_demo的server启动过程:

我把说明写在了代码里面,看起来更加清楚一些

func main() {
//**第一步**:
//从xingo框架哪边获取接口,新建一个tcp服务器
s := xingo.NewXingoTcpServer()

//**第二步**:
//客户端请求的api_x,x=数字,手动添加进去,
/*在开发中会有多个不同类型的aip_xxx的Router,所以采用了手动添加*/
TestRouterObj := &api.TestRouter{}
s.AddRouter(TestRouterObj)
//add api ---------------end

//**第三步**:
//regest callback
//注册客户端 连接和断开连接的监听事件
utils.GlobalObject.OnConnectioned = DoConnectionMade
utils.GlobalObject.OnClosed = DoConnectionLost

//**第四步**:
//正式启动服务器
s.Serve()
}


这里的第四步: s.Serve() 就是启动服务器:



//启动函数
func (this *Server) Serve() {
this.Start()
this.WaitSignal()
}


现在分解一下服务器的启动过程:



可以看到xingo_demo用的是Tcp服务,s.Serve()启动;

下一节我们看看xingo的初始化过程
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐