refactor(rpc): 重构服务器信息获取逻辑,移除冗余锁机制并优化踢人逻辑

This commit is contained in:
1
2025-11-03 15:30:41 +00:00
parent 35935549bd
commit e86e138d94
8 changed files with 44 additions and 19 deletions

View File

@@ -5,12 +5,11 @@ import (
"blazing/modules/base/service"
"blazing/modules/blazing/model"
"context"
"sync"
"github.com/butoften/array"
)
func GetServerInfoList1() []ServerInfo {
func GetServerInfoList() []ServerInfo {
dictInfoModel1 := model.NewServerList()
mType := cool.DBM(dictInfoModel1)
t, _ := mType.All()
@@ -32,10 +31,15 @@ func GetServerInfoList1() []ServerInfo {
}
tt.Port = v.Port
t, ok := Clientmap[v.Port]
if ok && t != nil {
// tt.Friends = v.Friends
ret1 = append(ret1, *tt)
if ok {
cool.Loger.Info(context.TODO(), "服务器假踢人")
err := t.KickPerson(0) //实现指定服务器踢人
if err == nil {
// tt.Friends = v.Friends
ret1 = append(ret1, *tt)
}
}
}
@@ -112,19 +116,19 @@ type BlackInfo struct {
//TimePoke uint32
}
func Refurh() {
l.Lock()
defer l.Unlock()
GetServerInfoList = GetServerInfoList1()
// func Refurh() {
// l.Lock()
// defer l.Unlock()
// GetServerInfoList = GetServerInfoList1()
}
// }
func GetServer() []ServerInfo {
l.RLock()
defer l.RUnlock()
return GetServerInfoList
// func GetServer() []ServerInfo {
// l.RLock()
// defer l.RUnlock()
// return GetServerInfoList
}
// }
var GetServerInfoList = GetServerInfoList1()
var l sync.RWMutex
// var GetServerInfoList = GetServerInfoList1()
// var l sync.RWMutex