Transferring data byte per byte is slow, running add with CleanFilter on
a 2.9MB file takes 20 seconds. Using a buffer of 8k shrinks this time to
70ms.
Change-Id: I3bc2d8c11fe6cfaffcc99dc2a00643e01ac4e9cc
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
public int run() throws IOException {
try {
- int b = in.read();
- if (b != -1) {
- dOut.write(b);
- size++;
- return 1;
+ byte[] buf = new byte[8192];
+ int length = in.read(buf);
+ if (length != -1) {
+ dOut.write(buf, 0, length);
+ size += length;
+ return length;
} else {
dOut.close();
tmpOut.close();