public void close(boolean keepAlive) {
    // destroying connection pools
    boolean foundClientPool = false;
    synchronized (poolLock) {
      for (Entry<String, Pool> entry : pools.entrySet()) {
        Pool pool = entry.getValue();
        if (pool instanceof PoolImpl) {
          ((PoolImpl) pool).basicDestroy(keepAlive);
          foundClientPool = true;
        }

      }
      pools = Collections.emptyMap();
      itrForEmergencyClose = Optional.empty();
      if (foundClientPool) {
        // Now that the client has all the pools destroyed free up the pooled comm buffers
        ServerConnection.emptyCommBufferPool();
      }
    }
  }
Destroys all created pool in this manager.
geode-core/src/main/java/org/apache/geode/internal/cache/PoolManagerImpl.java