============================================================ 第三部分:插件注册和管理 ============================================================ RegisterGlobalPlugin 注册异步插件到全局注册表
(plugin AsyncSearchPlugin)
| 116 | |
| 117 | // RegisterGlobalPlugin 注册异步插件到全局注册表 |
| 118 | func RegisterGlobalPlugin(plugin AsyncSearchPlugin) { |
| 119 | if plugin == nil { |
| 120 | return |
| 121 | } |
| 122 | |
| 123 | globalRegistryLock.Lock() |
| 124 | defer globalRegistryLock.Unlock() |
| 125 | |
| 126 | name := plugin.Name() |
| 127 | if name == "" { |
| 128 | return |
| 129 | } |
| 130 | |
| 131 | globalRegistry[name] = plugin |
| 132 | } |
| 133 | |
| 134 | // GetRegisteredPlugins 获取所有已注册的异步插件 |
| 135 | func GetRegisteredPlugins() []AsyncSearchPlugin { |