code: func (p *ConnPool) init() {
  	p.pool = make(map[string]*Conn)
  	p.limiter = make(map[string]chan struct{})
  	p.shutdownCh = make(chan struct{})
  	if p.MaxTime > 0 {
  		go p.reap()
  	}
  }
docs: // init configures the initial data structures. It should be called
  // by p.once.Do(p.init) in all public methods.