Posted By: Neuromancer (... bright eyes ...) on 'CZprogram'
Title:     Re: garbage collector
Date:      Wed Oct 27 15:56:46 2004

> Zdar,
>  hral jsem si zase chvili s .net (C++) a zkousel jsem jak moc ovlivnuje 
> rychlost behu programu garbage collector (jestli se nekdy viditelne kousne 
> pri kresleni). Pritom jsem narazil zase na neco, cemu nerozumim. Schvalne
> jsem 
> psal jako prase, aplikace neco jednoducheho malovala, samotne malovani se 
> spoustelo pres timer.  V kazde iteraci jsme poustel CreateGraphics, vytvarel
> 
> Pen, Image atd... Po chvili pocitac zahlasil, ze mu dosla pamet. Samozrejme
> to 
> bylo kvuli tomu, ze jsem nedaval Dispose(). Jednoduse nechapu, proc kdyz si 
> GC muze hlidat jestli jeste neco pracuje s pameti, tak ze si nedokaze 
> pohlidat, ze uz nikdo nepouziva resources. Koukal jsem, ze to same plati i 
> pro javu. Mate nekdo predstavu, proc je v tom takovy rozdil a resources se 
> nemuzou uvolnovat automaticky, kdyz uz si nekdo dal tu praci, ze se uvolnuje
> 
> pamet? Pripada mi to jako stejny problem...
> -
> Clovek je nejpomalejsi zname zarizeni typu I/O.
>                                                                  Quasimodo

Hele a nebyl problem v tom, ze dane objekty jeste nebyly uvolneny garbage
collectorem? Nevim, jestli to dela zrovna Graphics, ale obecne se resourcy
v destructoru (finalizeru) v .net uvolnuji. Problem akorat je, ze se to
casteji stane mnohem pozdeji nez bys chtel, pokud je neuvolnis explicitne
pres Dispose
mrkni treba sem
http://bdn.borland.com/article/0,1410,29365,00.html#NonDeterministicFinalizatio
n
--------------------------------------------------------------------/
|       ICQ 20529980                               Neuromancer       |
|              Take me far away, where the dragons fly,              |
/------------ leave me to my dreams, or just let me die. ------------

Search the boards