code: @Override
  	public void shutdown() {
  		if (isShutDown)
  			return;
  
  		isShutDown = Boolean.TRUE;
  		lock.lock();
  		try
  		{
  			onShutDown();
  			waiting.clear();
  			pool.clear();
  			borrowed.clear();
  		}
  		finally {
  			lock.unlock();
  		}
  	}
docs: {@inheritDoc}