fix: 修复 server 异步消息的 callback 的并发问题

将 callback 转为系统消息的方式执行
This commit is contained in:
kercylan98 2023-07-29 16:42:57 +08:00
parent abd1db5586
commit 1297ae7a8f
1 changed files with 3 additions and 1 deletions

View File

@ -569,7 +569,9 @@ func (slf *Server) dispatchMessage(msg *Message) {
}() }()
err := handle() err := handle()
if cb && callback != nil { if cb && callback != nil {
callback(err) PushSystemMessage(slf, func() {
callback(err)
}, "AsyncCallback")
} else { } else {
log.Error("Server", log.String("MessageType", messageNames[msg.t]), log.Any("error", err), log.String("stack", string(debug.Stack()))) log.Error("Server", log.String("MessageType", messageNames[msg.t]), log.Any("error", err), log.String("stack", string(debug.Stack())))
} }