dyloader 增加 win,优化 register

This commit is contained in:
fumiama
2021-10-13 11:07:34 +08:00
parent 6b263418a0
commit a0b9623a9f
9 changed files with 500 additions and 18 deletions

View File

@@ -4,22 +4,28 @@ import (
zero "github.com/wdvxdr1123/ZeroBot"
)
var enmap = make(map[string]*zero.Engine)
// Register 注册插件控制器
func Register(service string, o *Options) *zero.Engine {
engine := zero.New()
engine.UsePreHandler(newctrl(service, o).Handler())
enmap[service] = engine
return engine
}
// Delete 删除插件控制器,不会删除数据
func Delete(engine *zero.Engine, service string) {
engine.Delete()
mu.RLock()
_, ok := managers[service]
mu.RUnlock()
func Delete(service string) {
engine, ok := enmap[service]
if ok {
mu.Lock()
delete(managers, service)
mu.Unlock()
engine.Delete()
mu.RLock()
_, ok = managers[service]
mu.RUnlock()
if ok {
mu.Lock()
delete(managers, service)
mu.Unlock()
}
}
}