/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Manuel oprydning?
Fra : Carsten H. Pedersen


Dato : 20-03-02 21:25

Jeg har nu i flere eksempler fundet følgende ved brug af klassen Vector:

public void foo() {
Vector vec = new Vector();
...
vec.clear();
vec.trimToSize();
}

Mit spørgsmål er så om dette overhovedet øger performance i ens applikation?
Jeg ville tro at garbage collector ville sørge for at rydde op. Jeg kan dog
godt på den anden side se, at dette måske er en mere øjeblikkelig løsning
til at frigøre ressourcer.

Der er utvivlsomt nogen der ved mere om det her end jeg, siden jeg intet
ved, og forhåbentlig gider du også svare. :)


/Carsten




 
 
Dennis Thrysøe (21-03-2002)
Kommentar
Fra : Dennis Thrysøe


Dato : 21-03-02 08:11



Carsten H. Pedersen wrote:
> Jeg har nu i flere eksempler fundet følgende ved brug af klassen Vector:
>
> public void foo() {
> Vector vec = new Vector();
> ...
> vec.clear();
> vec.trimToSize();
> }
>
> Mit spørgsmål er så om dette overhovedet øger performance i ens applikation?
> Jeg ville tro at garbage collector ville sørge for at rydde op. Jeg kan dog
> godt på den anden side se, at dette måske er en mere øjeblikkelig løsning
> til at frigøre ressourcer.
>
> Der er utvivlsomt nogen der ved mere om det her end jeg, siden jeg intet
> ved, og forhåbentlig gider du også svare. :)

Vector øger selv sin størrelse, hver gang der bliver brug for det. Jeg
tror nok, at den fordobler størrelsen af det interne array hver gang.

Hvis man så mener, at man er færdig med at komme noget deri, kan man i
princippet spare noget af arrayet (4 bytes pr. element) ved at afkorte
det til den forbrugte størrelse.

I eksemplet ovenfor tømmes Vectoren først, så her kan hele arrayet
spares væk.

-dennis


Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste