refactor(*) stronger concurrency locks

This commit is contained in:
Javier Guerra
2019-11-19 11:49:03 -05:00
committed by Guilherme Salazar
parent 9c17f1c76f
commit ca99408e13
3 changed files with 7 additions and 6 deletions

View File

@@ -52,9 +52,10 @@ type pluginData struct {
}
func (s PluginServer) loadPlugin(name string) (plug *pluginData, err error) {
s.lock.RLock()
s.lock.Lock()
defer s.lock.Unlock()
plug, ok := s.plugins[name]
s.lock.RUnlock()
if ok {
return
}
@@ -84,9 +85,7 @@ func (s PluginServer) loadPlugin(name string) (plug *pluginData, err error) {
config: constructor(),
}
s.lock.Lock()
s.plugins[name] = plug
s.lock.Unlock()
return
}