问题遇到的现象和发生背景
在做tcp连接单路由的时候,没问题,多路由的时候,想设定对不同的信息id对应进行不同的处理,但是server实验的时候报错
好像是监听出错引起了进程提前结束,listen报错nil,为什么会出现的情况,单路由的时候没问题问什么改成多路由就这样了QAQ 在框架里已经进行相应的模块设计了,不知道为什么会和监听有关系
用代码块功能插入代码,请勿粘贴截图
运行结果及报错内容
Add api MsgId 0 succ!
Add Router sucess!!
Add api MsgId 1 succ!
Add Router sucess!!
[Zinx]Server name:ZinxServerApp,listener at IP:0.0.0.0,Port:8999 is staring
[Start] Server Listenner at ip:0.0.0.0,Port:8999,is startinglistener tcp4 err: <nil>
fatal error: all goroutines are asleep - deadlock!
goroutine 1 [select (no cases)]:
zinx/znet.(*Server).Serve(0xca53b9?)
D:/go/src/zinx实验/zinx/znet/server.go:89 +0x1e
main.main()
D:/go/src/zinx实验/myDemo/zinxv0.6/Sever.go:55 +0x14f
进程 已完成,退出代码为 2
我的解答思路和尝试过的方法
两个go的提前结束估计都是因为监听失败的提前退出了,没有见过监听报空的QAQ