lock optimization
This commit is contained in:
@ -336,18 +336,18 @@ func (cc *ClientConn) watchAddrUpdates() error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
case naming.Delete:
|
case naming.Delete:
|
||||||
cc.mu.Lock()
|
cc.mu.RLock()
|
||||||
addr := Address{
|
addr := Address{
|
||||||
Addr: update.Addr,
|
Addr: update.Addr,
|
||||||
Metadata: update.Metadata,
|
Metadata: update.Metadata,
|
||||||
}
|
}
|
||||||
ac, ok := cc.conns[addr]
|
ac, ok := cc.conns[addr]
|
||||||
if !ok {
|
if !ok {
|
||||||
cc.mu.Unlock()
|
cc.mu.RUnlock()
|
||||||
grpclog.Println("grpc: The name resolver wanted to delete a non-exist address: ", addr)
|
grpclog.Println("grpc: The name resolver wanted to delete a non-exist address: ", addr)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
cc.mu.Unlock()
|
cc.mu.RUnlock()
|
||||||
ac.tearDown(ErrConnDrain)
|
ac.tearDown(ErrConnDrain)
|
||||||
default:
|
default:
|
||||||
grpclog.Println("Unknown update.Op ", update.Op)
|
grpclog.Println("Unknown update.Op ", update.Op)
|
||||||
|
Reference in New Issue
Block a user