java, geheugen vol met iterators
Geplaatst: vr 10 jan 2014, 17:51
Bij het profilen van mijn applicatie kom ik er achter dat het grootste gedeelte van het geheugen in beslag wordt genomen door objecten van het type ArrayList$Itr
Ik heb inderdaad een heleboel loops over ArrayLists in mijn code, maar ik heb geen idee hoe ik kan dit probleem zou kunnen voorkomen.
Is er een manier om er voor te zorgen dat de iterators sneller opgeruimd worden?
Of kun je ze hergebruiken zodat je niet steeds een nieuwe hoeft aan te maken bij iedere nieuwe loop?
Op StackOverflow vond ik als tip om gewoon te itereren op de 'klassieke' manier:
Nu kan ik dit wel gaan proberen natuurlijk, maar het is behoorlijk veel werk om dat overal in mijn code te gaan doen, dus het leek me handiger om hier eens te vragen wat jullie mening hierover is.
Ik heb inderdaad een heleboel loops over ArrayLists in mijn code, maar ik heb geen idee hoe ik kan dit probleem zou kunnen voorkomen.
Is er een manier om er voor te zorgen dat de iterators sneller opgeruimd worden?
Of kun je ze hergebruiken zodat je niet steeds een nieuwe hoeft aan te maken bij iedere nieuwe loop?
Op StackOverflow vond ik als tip om gewoon te itereren op de 'klassieke' manier:
Code: Selecteer alles
for(int i=0; i<myList.size(); i++){
etc...
}