code: @Override
  	protected ThriftConnection<T> getConnectionInternal() throws ThriftConnectionPoolException {
  		ThriftConnection<T> result = pollConnection();
  		// 如果立即获取连接失败 则换一个分区继续获取
  		// TODO 设置当连接获取超时返回null？
  		if (result == null) {
  			if (this.pool.getThriftServerCount() == 0) {
  				throw new ThriftConnectionPoolException("当前没有可用的服务器  无法获取连接");
  			}
  			int partition = (int) (Thread.currentThread().getId() % this.pool.thriftServerCount);
  
  			ThriftConnectionPartition<T> thriftConnectionPartition = this.pool.partitions.get(partition);
  
  			try {
  				result = thriftConnectionPartition.poolFreeConnection(this.pool.connectionTimeoutInMs,
  						TimeUnit.MILLISECONDS);
  				if (result == null) {
  
  					throw new ThriftConnectionPoolException("Timed out waiting for a free available connection.");
  				}
  			} catch (InterruptedException e) {
  				throw new ThriftConnectionPoolException(e);
  			}
  		}
  		return result;
  	}
docs: /*
  @see com.wmz7year.thrift.pool.AbstractThriftConnectionStrategy#
  getConnectionInternal()