func()

in monitored_cache.go [87:111]


func (c *monitoredCache) Close() error {
	c.mu.Lock()
	defer c.mu.Unlock()
	if c.closed {
		return nil
	}

	c.closed = true
	close(c.closedCh)

	if c.domainNameTicker != nil {
		c.domainNameTicker.Stop()
	}

	if atomic.LoadUint64(c.openConnsCount) > 0 {
		for _, socket := range c.openConns {
			if !socket.isClosed() {
				_ = socket.Close() // force socket closed, ok to ignore error.
			}
		}
		atomic.StoreUint64(c.openConnsCount, 0)
	}

	return c.connectionInfoCache.Close()
}