Buffergröße ?

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo zusammen, ich habe folgendes problem im zusammenhang mit buffern:

Mein Programm macht folgendes: es liest dateien aus und packt diese in ein gzip archiv.
Das funktioniert auch, allerdings ist es recht langsam bei grosseren dateien, zb 500mb.


Code:
static int BLOCKSIZE = 8192;
.......
		    	fos.setLevel(9);
		    	ZipEntry ze = new ZipEntry(files[i].toString());
		    	fos.putNextEntry(ze);
	        	while(0<(len=fis.read(buffer))) {
	        		fos.write(buffer,0,len);
	        	}
	        	fos.closeEntry();
	        	fos.flush();

Man sieht ich benutze die höchste Kompremierungsstufe, klar dass das länger dauert als wenn sie nur geschrieben werden.
Sollte man eventuell was an der BLOCKSIZE ändern oder ist die Größe egal ?


Hoffe die Frage ist nicht soooo dumm, und wurde nicht schon mal gestellt.
 

Bleiglanz

Gesperrter Benutzer
wie langsam ist es denn

schon mal 500MB mit einem anderen Programm gezippt?

ggf. das nio anschauen, könnte bei diesen Mengen ein paar % bringen
 
G

Guest

Gast
Also er macht das ziemlich genausoschnell wie WinRAR wobei der Vergleich natürlich hinkt weil winRAR ja dazu gebaut ist sehr schnell zu (de)compremieren.

Meine Frage war eher ob sich zb ein großer Buffer für grosse Dateien eignet und ein kleiner für Kleinere, oder ob es egal ist.
Und was nio ?
Sry für die dumme Frage, bin noch relativer Anfänger.
 
G

Gast

Gast
Ahh ich wollte eigentlich auch noch sagen, dass mein prozessor während der laufzeit nur ca 40-80 prozent ausgelastet ist. Deswegen bin ich drauf gekommen.
Oder hakelts dann einfach nur an meiner Festplattengeschwindigkeit??
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben