public ListenableFuture<?> resizeAsync(int delta, List<SessionType> toClose) {
    if (delta == 0) return createDummyFuture();
    poolLock.lock();
    try {
      if (delta < 0) {
        return resizeDownInternal(-delta, toClose);
      } else {
        return resizeUpInternal(delta);
      }
    } finally {
      poolLock.unlock();
    }
  }
Resizes the pool asynchronously.
@param delta A number of threads to add or remove.
@param toClose An output list to which newly-unneeded sessions, to be closed by the caller.
ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionPool.java