支持注册配置刷新事件

This commit is contained in:
kercylan98 2023-05-20 17:33:50 +08:00
parent fe90f34770
commit 5ee465c17e
2 changed files with 16 additions and 15 deletions

View File

@ -11,21 +11,6 @@ import (
"time" "time"
) )
type RefreshEvent func()
var configRefreshEventHandles []func()
// RegConfigRefreshEvent 当配置刷新时将立即执行被注册的事件处理函数
func RegConfigRefreshEvent(handle RefreshEvent) {
configRefreshEventHandles = append(configRefreshEventHandles, handle)
}
func OnConfigRefreshEvent() {
for _, handle := range configRefreshEventHandles {
handle()
}
}
type LoadHandle func(handle func(filename string, config any) error) type LoadHandle func(handle func(filename string, config any) error)
type RefreshHandle func() type RefreshHandle func()

16
config/event.go Normal file
View File

@ -0,0 +1,16 @@
package config
type RefreshEvent func()
var configRefreshEventHandles []func()
// RegConfigRefreshEvent 当配置刷新时将立即执行被注册的事件处理函数
func RegConfigRefreshEvent(handle RefreshEvent) {
configRefreshEventHandles = append(configRefreshEventHandles, handle)
}
func OnConfigRefreshEvent() {
for _, handle := range configRefreshEventHandles {
handle()
}
}