Garbage Collection
In de informatica is garbage collection een vorm van geheugenbeheer. Het ruimt automatisch ongebruikte objecten en pointers in het geheugen op, zodat de bronnen opnieuw kunnen worden gebruikt. Sommige programmeertalen hebben ingebouwde garbage collection, terwijl andere aangepaste functies vereisen om ongebruikt geheugen te beheren.
Een veelgebruikte methode voor garbage collection heet referentietelling. Deze strategie telt eenvoudig hoeveel verwijzingen er zijn naar elk object dat in het geheugen is opgeslagen. Als een object geen verwijzingen heeft, wordt het als onnodig beschouwd en kan het worden verwijderd om ruimte in het geheugen vrij te maken. Geavanceerde referentietelling detecteert objecten die alleen naar elkaar verwijzen, wat aangeeft dat de objecten niet door het bovenliggende proces worden gebruikt.
Garbage collection kan ook tijdens het compileren worden uitgevoerd, wanneer de broncode van een programma wordt gecompileerd tot een uitvoerbaar programma. Bij deze methode bepaalt de compiler welke bronnen in het geheugen na een bepaald moment nooit meer worden gebruikt. Vervolgens kan deze instructies toevoegen om die bronnen automatisch uit het geheugen vrij te geven. Hoewel dit een effectieve manier is om ongebruikte objecten te verwijderen, moet dit voorzichtig gebeuren om te voorkomen dat verwijzingen worden verwijderd die het programma nodig heeft.
Garbage collection is een belangrijk onderdeel van softwareontwikkeling, omdat het voorkomt dat programma's te veel RAM gebruiken. Naast het efficiënter laten werken van programma's kan het ook ernstige bugs voorkomen, zoals geheugenlekken, waardoor een programma kan vastlopen.
Test je kennis