RemovePoolHook removes a pool hook from the pool.
(hook PoolHook)
| 470 | |
| 471 | // RemovePoolHook removes a pool hook from the pool. |
| 472 | func (p *ConnPool) RemovePoolHook(hook PoolHook) { |
| 473 | manager := p.hookManager.Load() |
| 474 | if manager != nil { |
| 475 | // Create new manager with removed hook |
| 476 | newManager := manager.Clone() |
| 477 | newManager.RemoveHook(hook) |
| 478 | |
| 479 | // Atomically swap to new manager |
| 480 | p.hookManager.Store(newManager) |
| 481 | } |
| 482 | } |
| 483 | |
| 484 | func (p *ConnPool) checkMinIdleConns() { |
| 485 | // If a check is already in progress, mark that we need another check and return |