public AsyncBufferedOutputStream(OutputStream out,int bufSize,int maxBuffers){
  super(out);
  buffers=new ConcurrentLinkedDeque<>();
  buf=new byte[bufSize];
  flusherThread.start();
}

public AsyncBufferedOutputStream ( OutputStream out , int bufSize , int maxBuffers ) { super ( out ) ; buffers = new ConcurrentLinkedDeque < > ( ) ; buf = new byte [ bufSize ] ; flusherThread . start ( ) ; }
creates an asynchronous buffered output stream .
