( uid_7086 | 2014. 08. 19., k – 18:12 )

Lehet, hogy a poén kedvéért a windows-omra is visszarakom egy időre a java-t, mert már kezdek kíváncsi lenni a dologra.

Annyi azért hozzátartozik, hogy (írtam is valahol itt) kipróbáltam fizikailag létező gépen is, hasonló eredményekkel.

Ami a soronkénti olvasást illeti... nem tudom, pontosan mi történik, amikor a pythonban ilyet művelek:

with open("file.txt","r") as f:
    for rec in f:
        pass

Ami biztosnak látszik, hogy jóval gyorsabb, mint ez:

with open("file.txt","r") as f:
    rec=f.readline()
    while rec != "":
        pass
        rec=f.readline()

Ez utóbbi variáció esetében a teszthez használt állomány beolvasása csak alig valamivel volt gyorsabb, mint a javas verzió, míg az előbbit megközelíteni sem tudom mind a mai napig a java BufferedReader-ével. Ezért készítettem egy olyan verziót, ami az egész állományt tömbbe tölti és azon megy végig.
Persze, ezt okozhatja az op.rendszer cache műödése is, a virtualbox... hát az talán nem annyira, mert a fizikai gépen is ezt produkálta, ha jól emlékszem.