Article View: nl.comp.programmeren
Article #477Re: C# garbage collector
From: Ramon Smits
Date: Sat, 20 Sep 2003 09:28
Date: Sat, 20 Sep 2003 09:28
52 lines
3492 bytes
3492 bytes
Serve La wrote: >>De garbage collector gaat pas ruimen nadat er daadwerkelijk het systeem >>bijna geen fysiek vrij geheugen meer is > > Dat vind ik nogal moeilijk te geloven en dat gedrag zie ik ook helemaal niet > in een testprogje van mij. Tsja... low on memory misschien :). Wat doet je test applicatie om dit na te bootsen? WinForm applicaties gaan ook garbagecollecten bij een minimize als ik me niet vergis... >>Dit gebeurd omdat dit een kostbare aangelegenheid is. > > Wat? Garbage collecten... Je 'heap' groeit namelijk enorm. Als de garbage collector gaat ruimen dan heb je ook brokken geheugen die verplaatst moeten worden. De GC moet zeg maar de 'heap' gaan defragmenteren. Daarom moet je in je code eigenlijk nooit GC.Collect() aanroepen. > Dat wil nog niet zeggen dat alle programma's ineens asociaal veel geheugen > moeten gebruiken. Dat zeg ik ook niet :). It's all about design. Waarom een object continu creeeren en destroyen als je weet dat je die actie per uur 1 miljoen maal moet doen. Dan is het nuttig dergelijke objecten te cachen. Maar dat is eigenlijk altijd al geweest. > Ook met 512mb zit processen elkaar snel in de weg. > Stel, je hebt een tekstverwerker, mailprogramma, ontwikkelomgeving en een > tekenprogramma openstaan die zich allemaal zo gedragen. Dan zit je met je > eeuwig thrashende 512meg 3GHZ te koekeloeren alsof je een P100/32mb hebt. Inderdaad een bulk aan applicaties die veel geheugen nodig hebben. Maar dat zijn piek momenten. Je tekstverwerken is niet continu met een spellingscontrole bezig en je ontwikkelomgeving niet continu aan het compileren en je tekenprogramma niet continu een batch aan beeldbewerkingen. Als een applicatie veel geheugen nodig heeft wil dit niet zeggen dat die applicatie dat geheugen ook continu nodig heeft. Zet anders maar eens 30 applicaties open met data. Je zult zien dat de applicatie die de focus heeft gewoon goed performed ondanks dat je systeemgeheugen toch echt op is. -- Ramon Smits aka. Exyll http://www.exyll.net/ (ipv6 enabled)
Technical Details
Message-ID:
<3f6c1dd6$0$135$e4fe514c@dreader4.news.xs4all.nl>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-09!supernews.com!diablo.theplanet.net!newspeer1-gui.server.ntli.net!ntli.net!news2.euro.net!fi.sn.net!newsfeed1.fi.sn.net!news2.euro.net!newsfeed.wxs.nl!transit.news.xs4all.nl!rhinewceros.xs4all.nl!not-for-mailReferences:
<bkecq3$11sg$1@nl-news.euro.net> <1063971705.136647@seven.kulnet.kuleuven.ac.be> <3f6b8a0a$0$197$e4fe514c@dreader3.news.xs4all.nl> <bkh1nn$g66$1@news2.tilbu1.nb.home.nl>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: 107324,99e0602d9fb9d25e X-Google-Attributes: gid107324,public X-Google-Thread: fcea4,99e0602d9fb9d25e X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2003-09-20 02:28:59 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-09!supernews.com!diablo.theplanet.net!newspeer1-gui.server.ntli.net!ntli.net!news2.euro.net!fi.sn.net!newsfeed1.fi.sn.net!news2.euro.net!newsfeed.wxs.nl!transit.news.xs4all.nl!rhinewceros.xs4all.nl!not-for-mail Date: Sat, 20 Sep 2003 11:28:54 +0200 From: Ramon Smits <exyll@hotmail.com> Organization: Subliminal User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5b) Gecko/20030901 Thunderbird/0.2 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: nl.comp.programmeren,be.comp.programming Subject: Re: C# garbage collector References: <bkecq3$11sg$1@nl-news.euro.net> <1063971705.136647@seven.kulnet.kuleuven.ac.be> <3f6b8a0a$0$197$e4fe514c@dreader3.news.xs4all.nl> <bkh1nn$g66$1@news2.tilbu1.nb.home.nl> In-Reply-To: <bkh1nn$g66$1@news2.tilbu1.nb.home.nl> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Lines: 53 Message-ID: <3f6c1dd6$0$135$e4fe514c@dreader4.news.xs4all.nl> NNTP-Posting-Host: 194.109.160.204 X-Trace: 1064050134 dreader4.news.xs4all.nl 135 194.109.160.204:24543