"refactor(network): 重构连接处理逻辑,使用自定义Conn类型替代gnet.Conn依赖"

This commit is contained in:
1
2025-07-26 02:14:54 +00:00
parent 99318f6674
commit 459a779591
5 changed files with 17 additions and 27 deletions

View File

@@ -18,7 +18,6 @@ import (
"github.com/gogf/gf/v2/os/glog"
"github.com/gogf/gf/v2/util/gconv"
"github.com/lunixbochs/struc"
"github.com/panjf2000/gnet/v2"
)
var Maincontroller = NewController() //注入service
@@ -160,7 +159,7 @@ func getcmd(t reflect.Type) uint32 {
}
// 遍历结构体方法并执行RECV_cmd
func Recv(c gnet.Conn, data handler.TomeeHeader) {
func Recv(c *entity.Conn, data handler.TomeeHeader) {
cmdlister, ok := cool.CmdCache.Load(data.CMD)
if !ok {
@@ -209,7 +208,7 @@ func Recv(c gnet.Conn, data handler.TomeeHeader) {
if len(ret) <= 0 { //如果判断没有参数,那就说明这个包没有返回参数
return
}
r := entity.NewConn(c) //这里实现新增客户端
aa, ok := ret[1].Interface().(service.OutInfo) //判断错误
if ok && aa != nil { //这里实现回复错误包
@@ -217,11 +216,11 @@ func Recv(c gnet.Conn, data handler.TomeeHeader) {
g.Log().Error(context.Background(), aa.Error(), aa.Code())
data.Result = uint32(aa.Code())
r.SendPack(data.Pack(nil))
c.SendPack(data.Pack(nil))
return
}
r.SendPack(data.Pack(ret[0].Interface()))
c.SendPack(data.Pack(ret[0].Interface()))
}