pool
pool copied to clipboard
请问下池子为什么每次要lock呢
请问下 pool 为什么每次要 lock ,是什么考虑呢
// getConns 获取所有连接 func (c *channelPool) getConns() chan *idleConn { c.mu.Lock() conns := c.conns c.mu.Unlock()
考虑并发的时候,获取链接的时候冲突,所以要把这个地方锁住,等拿出来了。再释放。掉锁
conns本身就是chan,没有必要再加读锁吧