23 lines
518 B
Go
23 lines
518 B
Go
package config
|
|
|
|
import "sync"
|
|
|
|
var runtimeManager struct {
|
|
sync.RWMutex
|
|
value *ConfigManager
|
|
}
|
|
|
|
// SetRuntimeManager 注入当前进程使用的配置管理器。
|
|
func SetRuntimeManager(manager *ConfigManager) {
|
|
runtimeManager.Lock()
|
|
runtimeManager.value = manager
|
|
runtimeManager.Unlock()
|
|
}
|
|
|
|
// CurrentManager 返回当前配置管理器;未完成分区配置初始化时返回 nil。
|
|
func CurrentManager() *ConfigManager {
|
|
runtimeManager.RLock()
|
|
defer runtimeManager.RUnlock()
|
|
return runtimeManager.value
|
|
}
|