docs: server.PushAsyncMessage 注意事项补全

This commit is contained in:
kercylan98 2023-07-29 16:46:10 +08:00
parent 1297ae7a8f
commit 2482d2e7f0
1 changed files with 3 additions and 0 deletions

View File

@ -143,6 +143,9 @@ func PushTickerMessage(srv *Server, caller func(), mark ...any) {
} }
// PushAsyncMessage 向特定服务器中推送 MessageTypeAsync 消息 // PushAsyncMessage 向特定服务器中推送 MessageTypeAsync 消息
// - 异步消息将在服务器的异步消息队列中进行处理,处理完成 caller 的阻塞操作后,将会通过系统消息执行 callback 函数
// - callback 函数将在异步消息处理完成后进行调用,无论过程是否产生 err都将被执行允许为 nil
// - 需要注意的是为了避免并发问题caller 函数请仅处理阻塞操作,其他操作应该在 callback 函数中进行
func PushAsyncMessage(srv *Server, caller func() error, callback func(err error), mark ...any) { func PushAsyncMessage(srv *Server, caller func() error, callback func(err error), mark ...any) {
msg := srv.messagePool.Get() msg := srv.messagePool.Get()
msg.t = MessageTypeAsync msg.t = MessageTypeAsync