Maneira mais eficiente de criar InputStream a partir de OutputStream

Esta página: http://blog.ostermiller.org/convert-java-outputstream-inputstream descreve como criar um InputStream a partir de OutputStream: new ByteArrayInputStream(out.toByteArray()) Outras alternativas são usar PipedStreams e novos threads, o que é complicado. Não gosto da ideia de copiar...