[Java lista] array

eMeL emel at emel.hu
2009. Dec. 10., Cs, 14:52:00 CET


> A másik észrevételem meg az, hogy ha az Arrays.fill annyira lassú
> lenne, akkor megírták volna natívban. De mivel ezt nem tették, így
> feltehetően alig valamivel lassabb, mint natívként lenne.

Valószínűleg azért halogatták, mert két eset lehetséges.

Objektumokat tárol a tömb:
Natív kóddal nem nyersz sokat, mert a régi objektum hivatkozásszámát 
törölni kell, ha a feltöltő nem NULL, akkor meg növelni azt.

Elemi típusokat tárol a tömb:
Az elemi típus hossza miatt nem triviális (case-ben döntemi kell és 
más-más feltöltő ciklus natívan)

Én is megfontolnám (fejlesztőként), hogy van-e értelme natívan megcsinálni.

De mint jeleztem, egy clear() hiányát érzem [ami az elemeket 
0,false,NULL stb-vel tölti fel, magyarán kinullázza a memória területet].
Ez (különösen elemi típusok tömbje esetén) valóban nagy sebesség 
különbséget adhat asszemblyben az interpretált kódhoz képest.

eMeL




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