```
fix(player): 修复玩家发送数据包时的空指针异常 - 将 `ClientData` 中的 `sync.Mutex` 替换为 `sync.RWMutex` 以支持读写锁 - 在 `ServerEvent.go` 中添加读锁保护对客户端数据的访问 - 增加对 `MainConn` 及其上下文是否存在判断,防止空指针引用 ```
This commit is contained in:
@@ -151,7 +151,9 @@ func (s *Server) OnTraffic(c gnet.Conn) (action gnet.Action) {
|
||||
t := c.Context().(*player.ClientData)
|
||||
//client := conn.RemoteAddr().String()
|
||||
s.workerPool.Submit(func() { //TODO 这里可能存在顺序执行问题,待修复
|
||||
t.Mu.RLock()
|
||||
t.OnEvent(msg.Payload)
|
||||
t.Mu.RUnlock()
|
||||
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user