From 4c4e1c1cc6b1e3c453908c26b374fe10adaea196 Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Tue, 31 Oct 2023 14:47:56 +0800 Subject: [PATCH] fix --- server/websocket/internal/logic/getstatlogic.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/server/websocket/internal/logic/getstatlogic.go b/server/websocket/internal/logic/getstatlogic.go index ce24ca00..8f56fcdb 100644 --- a/server/websocket/internal/logic/getstatlogic.go +++ b/server/websocket/internal/logic/getstatlogic.go @@ -4,6 +4,7 @@ import ( "context" "fusenapi/utils/auth" "fusenapi/utils/basic" + "sync" "fusenapi/server/websocket/internal/svc" "fusenapi/server/websocket/internal/types" @@ -28,11 +29,14 @@ func NewGetStatLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetStatLo // 处理进入前逻辑w,r // func (l *GetStatLogic) BeforeLogic(w http.ResponseWriter, r *http.Request) { // } +var GetStatMutex sync.Mutex func (l *GetStatLogic) GetStat(req *types.GetStatReq, userinfo *auth.UserInfo) (resp *basic.Response) { if req.Password != "fusen1314" { return resp.SetStatusWithMessage(basic.CodeOK, "你干嘛,哎哟") } + GetStatMutex.Lock() + defer GetStatMutex.Unlock() userStat := make(map[string]int) mapUserWsStat.Range(func(key, value any) bool { userStat[key.(string)] = value.(int)