feat 初次提交

This commit is contained in:
2026-01-03 14:26:10 +08:00
parent f4cb8128c7
commit 506f7ed5ed
18 changed files with 885 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
package instance
import (
"sync"
)
var Mgr *insManager
type insManager struct {
sync.RWMutex
insMap map[int64]*Instance // [uniqueNo]
}
func init() {
Mgr = &insManager{
insMap: make(map[int64]*Instance),
}
}
func (m *insManager) Add(uniqueNo int64, ins *Instance) {
m.Lock()
defer m.Unlock()
m.insMap[uniqueNo] = ins
}
func (m *insManager) Delete(uniqueNo int64) {
m.Lock()
defer m.Unlock()
delete(m.insMap, uniqueNo)
}
func (m *insManager) GetAll() map[int64]*Instance {
m.RLock()
defer m.RUnlock()
return m.insMap
}
func (m *insManager) GetByUniqueNo(uniqueNo int64) *Instance {
m.RLock()
defer m.RUnlock()
return m.insMap[uniqueNo]
}