code: protected Thread createPump(InputStream is, OutputStream os,
      boolean closeWhenExhausted, boolean nonBlockingIO) {
      StreamPumper pumper = new StreamPumper(is, os, closeWhenExhausted, nonBlockingIO);
      pumper.setAutoflush(true);
      final Thread result = new ThreadWithPumper(pumper);
      result.setDaemon(true);
      return result;
    }
docs: Creates a stream pumper to copy the given input stream to the
  given output stream.
  @param is the input stream to copy from.
  @param os the output stream to copy to.
  @param closeWhenExhausted if true close the inputstream.
  @param nonBlockingIO set it to <code>true</code> to use simulated non
  blocking IO.
  @return a thread object that does the pumping, subclasses
  should return an instance of {@link ThreadWithPumper
  ThreadWithPumper}.
  @since Ant 1.8.2