feat 修改usn类型为string

This commit is contained in:
2026-01-11 16:16:16 +08:00
parent 5af027b35c
commit 9e1889b956
13 changed files with 34 additions and 36 deletions

View File

@@ -8,35 +8,35 @@ import (
var UserMgr *userManager
type userManager struct {
userMap map[int64]*Client
userMap map[string]*Client
sync.RWMutex
}
func init() {
UserMgr = &userManager{
userMap: make(map[int64]*Client),
userMap: make(map[string]*Client),
}
}
func (m *userManager) Add(usn int64, client *Client) {
func (m *userManager) Add(usn string, client *Client) {
m.Lock()
defer m.Unlock()
m.userMap[usn] = client
global.OnlineUsersGauge.Inc()
}
func (m *userManager) Delete(usn int64) {
func (m *userManager) Delete(usn string) {
m.Lock()
defer m.Unlock()
delete(m.userMap, usn)
global.OnlineUsersGauge.Dec()
}
func (m *userManager) GetAll() map[int64]*Client {
func (m *userManager) GetAll() map[string]*Client {
m.RLock()
defer m.RUnlock()
copyMap := make(map[int64]*Client, len(m.userMap))
copyMap := make(map[string]*Client, len(m.userMap))
for k, v := range m.userMap {
copyMap[k] = v
}
@@ -54,7 +54,7 @@ func (m *userManager) GetAllInterface() []interface{} {
return r
}
func (m *userManager) GetByUSN(usn int64) *Client {
func (m *userManager) GetByUSN(usn string) *Client {
m.RLock()
defer m.RUnlock()
return m.userMap[usn]