make logx#getWriter concurrency-safe (#2233)
* make logx#getWriter concurrency-safe * make logx#getWriter concurrency-safe
This commit is contained in:
@@ -358,10 +358,19 @@ func errorTextSync(msg string) {
|
||||
}
|
||||
|
||||
func getWriter() Writer {
|
||||
w := writer.Load()
|
||||
var w Writer
|
||||
|
||||
writer.lock.RLock()
|
||||
w = writer.writer
|
||||
writer.lock.RUnlock()
|
||||
|
||||
if w == nil {
|
||||
w = newConsoleWriter()
|
||||
writer.Store(w)
|
||||
writer.lock.Lock()
|
||||
if writer.writer == nil {
|
||||
writer.writer = newConsoleWriter()
|
||||
}
|
||||
w = writer.writer
|
||||
writer.lock.Unlock()
|
||||
}
|
||||
|
||||
return w
|
||||
|
||||
Reference in New Issue
Block a user