From 530fed8ec225453572d57b15c200ab062c335457 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期三, 01 十一月 2023 19:20:21 +0800
Subject: [PATCH] 公海member_id使用0

---
 middleware/refresh_user.go |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/middleware/refresh_user.go b/middleware/refresh_user.go
index c1ae38d..54ebd3e 100644
--- a/middleware/refresh_user.go
+++ b/middleware/refresh_user.go
@@ -1,6 +1,7 @@
 package middleware
 
 import (
+	"aps_crm/pkg/logx"
 	"context"
 	"fmt"
 	"sync"
@@ -71,8 +72,10 @@
 			UserID:         userID,
 			lastActiveTime: time.Now().Unix(),
 		}
+		logx.Infof("add active user :%+v", r.Users[userID])
 	} else {
 		r.Users[userID].lastActiveTime = time.Now().Unix()
+		logx.Infof("refresh active time, user:%+v", r.Users[userID])
 	}
 }
 
@@ -88,16 +91,20 @@
 		select {
 		case <-ticker.C:
 			nowTs := time.Now().Unix()
-			fmt.Println("it is time to RemoveInActiveUser:", nowTs)
+			var users []*CurrentActiveUser
 			r.mu.RLock()
-			for userID, user := range r.Users {
+			for _, user := range r.Users {
+				users = append(users, user)
+			}
+			r.mu.RUnlock()
+			for _, user := range users {
 				if nowTs-user.lastActiveTime > r.expireSecond {
 					r.mu.Lock()
-					delete(r.Users, userID)
+					logx.Infof("removed in active user:%+v", user)
+					delete(r.Users, user.UserID)
 					r.mu.Unlock()
 				}
 			}
-			r.mu.RUnlock()
 		case <-r.ctx.Done():
 			fmt.Println("stop RemoveInActiveUser.")
 			return
@@ -113,8 +120,6 @@
 	for {
 		select {
 		case <-ticker.C:
-			nowTs := time.Now().Unix()
-			fmt.Println("it is time to RefreshUserInfo:", nowTs)
 			r.mu.RLock()
 			userIds := make([]string, len(r.Users))
 			for userID := range r.Users {
@@ -122,6 +127,7 @@
 			}
 			r.mu.RUnlock()
 			if len(userIds) != 0 {
+				logx.Infof("RefreshUserInfo, user ids: ", userIds)
 				SyncUserInfo(userIds)
 			}
 		case <-r.ctx.Done():

--
Gitblit v1.8.0