[Java lista] standard kimenetre valo iras felgyorsitasa

Verhás István istvan at verhas.com
2009. Nov. 28., Szo, 13:29:10 CET


Köszönjük az eredményeket, tanulságos.
Én a flush helyett inkább a close()-ra tennék javaslatot ha már nem 
akarunk többet kiírni. Az egyébként csinál egy flusht-t is.
üdv
vi

Laszlo Szathmary wrote:
>> A Sytem.out helyett használd a következő szösszenetet:
>>
>> PrintStream bufferedSystemOut = new PrintStream(new
>> BufferedOutputStream(System.out,1024*1024))
>>     
>
> Sziasztok!
>
> Koszonom a valaszokat. Csinaltam egy kis osszehasonlito tesztet es az
> eredmeny egeszen megdobbento. Maga a tesztprogram itt megtalalhato:
> http://paste.org/pastebin/view/12306 .
>
> A lenyeg (1 millio iteracio eseten, a kimenet egy 18 MB-os text file):
>
> (1) System.out.print
> 10697 msec
>
> (2) PrintStream bufferedSystemOut =
>       new PrintStream(new BufferedOutputStream(System.out, 4096));
> bufferedSystemOut.print("abcdefghijk ");
> ...
> bufferedSystemOut.flush();
>
> 1514 msec
>
> Megjegyzes: nem szukseges nagyon nagy puffert hasznalni, 4 KB is eleg.
> A vegen ne felejtsuk el meghivni a flush()-t.
>
> (3) BufferedWriter out =
>          new BufferedWriter(new OutputStreamWriter(System.out), 4096);
> out.write("abcdefghijk ");
> ...
> out.flush();
>
> 382 msec
>
> =====
>
> Lac
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
>   
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: http://javagrund.hu/pipermail/javalist/attachments/20091128/56925267/attachment.html 


További információk a(z) Javalist levelezőlistáról