``feat(socket): 完善踢人流程日志记录,添加CloseChan确保数据保存完成``
This commit is contained in:
@@ -44,6 +44,7 @@ type ClientData struct {
|
||||
Mu sync.Mutex
|
||||
ERROR_CONNUT int
|
||||
Wsmsg *WsCodec
|
||||
CloseChan chan struct{}
|
||||
}
|
||||
|
||||
func NewClientData() *ClientData {
|
||||
|
||||
@@ -41,11 +41,13 @@ func KickPlayer(userid uint32) error { //踢出玩家
|
||||
//实际上这里有个问题,会造成重复保存问题
|
||||
|
||||
player1.SendPack(head.Pack(nil))
|
||||
|
||||
player1.MainConn.Context().(*ClientData).CloseChan = make(chan struct{})
|
||||
player1.MainConn.Context().(*ClientData).Mu.Lock()
|
||||
player1.MainConn.Close()
|
||||
player1.MainConn.Context().(*ClientData).Mu.Unlock()
|
||||
// clientdata.Player = player
|
||||
|
||||
<-player1.MainConn.Context().(*ClientData).CloseChan
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user