protected Thread copy ( final InputStream in , final Writer out ) { Runnable r = ( ) -> { try { StreamUtil . streamCopy ( in , out ) ; } catch ( IOException e ) { try { out . flush ( ) ; } catch ( Throwable t ) { } unexpectedFailure ( e ) ; } } ; Thread t = new Thread ( r ) ; t . setName ( this + " - IOCopy " + in + " to " + out ) ; t . setDaemon ( true ) ; t . start ( ) ; return t ; }
Commence a background copy