Sakupljanje smeća (računarstvo): razlika između inačica
m Bot: Automatska zamjena teksta (-{{cite web +{{Citiranje web) |
m bnz |
||
| Redak 1: | Redak 1: | ||
Skupljanje smeća''' (eng. ''garbage collection'', kratica GC) je oblik automatskog [[upravljanje memorijom|upravljanja memorijom]]. Skupljač smeća (eng. ''garbage collector'') ili kraće skupljač (eng. ''collector'') pokušava vratiti u uporabljiv oblik [[smeće (računalstvo)|smeće]] ili [[objekt (računalstvo)|objekte]] koje [[računalni program]] više ne rabi. [[John McCarthy (računalni znanstvenik)|John McCarthy]] je otkrio ovo oko 1959. godine da bi riješio probleme [[Lisp]]a.<ref>{{Citiranje web|url=http://portal.acm.org/citation.cfm?id=367177.367199 |title=Recursive functions of symbolic expressions and their computation by machine |publisher=Portal.acm.org |date= |accessdate=29 March 2009}}</ref><ref>{{Citiranje web|url=http://www-formal.stanford.edu/jmc/recursive.html|title=Recursive functions of symbolic expressions and their computation by machine, Part I|accessdate=29 May 2009}}</ref> | |||
Ovime se oslobađa memoriju koja više nije potrebna. <ref name="demisticirani9">[http://free-zg.htnet.hr/jsribar/demistif.pdf Motik, Šribar: Demistificirani C++, 2. izdanje, str. 9]</ref> Ova složena funkcija<ref name="demisticirani2">[http://free-zg.htnet.hr/jsribar/demistif.pdf Demistificirani C++, 2. izdanje, str. 2]</ref> potrebna je jer se tijekom izvođenja programa [[curenje memorije|raspoloživa memorija smanjuje]] za preostali dio programa koji se ima izvršiti.<ref name="demisticirani9"/> Kod programa gdje ovo sustav ne rješava sâm, sustavu se mora kvalitetno zadati kad osloboditi memoriju, jer u suprotnom [[uništenje objekta (računalstvo)|uništit će se objekt]] koji bi se poslije mogao pokazati potrebnim.<ref name="demisticirani9"/> Obje pojave, i memorijsko curenje i uništenje objekta čestim su uzrokom kad program ili pak cijelo računalo "zablokira". | Ovime se oslobađa memoriju koja više nije potrebna. <ref name="demisticirani9">[http://free-zg.htnet.hr/jsribar/demistif.pdf Motik, Šribar: Demistificirani C++, 2. izdanje, str. 9]</ref> Ova složena funkcija<ref name="demisticirani2">[http://free-zg.htnet.hr/jsribar/demistif.pdf Demistificirani C++, 2. izdanje, str. 2]</ref> potrebna je jer se tijekom izvođenja programa [[curenje memorije|raspoloživa memorija smanjuje]] za preostali dio programa koji se ima izvršiti.<ref name="demisticirani9"/> Kod programa gdje ovo sustav ne rješava sâm, sustavu se mora kvalitetno zadati kad osloboditi memoriju, jer u suprotnom [[uništenje objekta (računalstvo)|uništit će se objekt]] koji bi se poslije mogao pokazati potrebnim.<ref name="demisticirani9"/> Obje pojave, i memorijsko curenje i uništenje objekta čestim su uzrokom kad program ili pak cijelo računalo "zablokira". | ||
Inačica od 24. ožujak 2022. u 16:08
Skupljanje smeća (eng. garbage collection, kratica GC) je oblik automatskog upravljanja memorijom. Skupljač smeća (eng. garbage collector) ili kraće skupljač (eng. collector) pokušava vratiti u uporabljiv oblik smeće ili objekte koje računalni program više ne rabi. John McCarthy je otkrio ovo oko 1959. godine da bi riješio probleme Lispa.[1][2] Ovime se oslobađa memoriju koja više nije potrebna. [3] Ova složena funkcija[4] potrebna je jer se tijekom izvođenja programa raspoloživa memorija smanjuje za preostali dio programa koji se ima izvršiti.[3] Kod programa gdje ovo sustav ne rješava sâm, sustavu se mora kvalitetno zadati kad osloboditi memoriju, jer u suprotnom uništit će se objekt koji bi se poslije mogao pokazati potrebnim.[3] Obje pojave, i memorijsko curenje i uništenje objekta čestim su uzrokom kad program ili pak cijelo računalo "zablokira".
Danas su ovi mehanizmi različito zastupljeni kod programa. Java taj mehanizam ima ugrađen i sâm se pokreće, ovisno o potrebi. [3] Kod C++-a ovo nije ugrađeno u sustav, no postoje knjižnice (i besplatne i komercijalne) koje to ugrađuju u sustav.[3]
Izvori
- ↑ Morate navesti naslov = i url = dok rabite {{Citiranje web}},,
- ↑ Morate navesti naslov = i url = dok rabite {{Citiranje web}},,
- ↑ 3,0 3,1 3,2 3,3 3,4 Motik, Šribar: Demistificirani C++, 2. izdanje, str. 9
- ↑ Demistificirani C++, 2. izdanje, str. 2