Geheugenlek

Een geheugenlek is een type programmeerfout waardoor een programma langzaam systeemgeheugen verbruikt totdat er niets meer over is. Een geheugenlek ontstaat langzaam, waardoor de computerprestaties geleidelijk achteruitgaan totdat het programma crasht of het volledige besturingssysteem vastloopt. Als je het programma dat verantwoordelijk is voor het lek afsluit, komt het systeemgeheugen vrij en wordt het probleem opgelost totdat het programma de volgende keer wordt uitgevoerd.

Geheugenlekken ontstaan wanneer een programma er niet in slaagt geheugen vrij te geven nadat het dit niet meer nodig heeft. Wanneer een programma een proces uitvoert, vraagt het systeem om een bepaalde hoeveelheid geheugen om dat proces uit te voeren. Nadat het proces is voltooid, moet het programma dat geheugen weer vrijgeven aan het systeem, zodat andere programma's het kunnen gebruiken. Als het programma niet de juiste functies bevat die geheugen vrijgeven (of als die functies niet correct worden gebruikt), houdt het dat geheugen in plaats daarvan voor onbepaalde tijd vast. Wanneer het programma dat proces later opnieuw uitvoert, vraagt het meer geheugen aan het systeem in plaats van het geheugen te gebruiken dat het al had toegewezen. Hierdoor neemt de hoeveelheid RAM die het gebruikt toe totdat het systeem niets meer over heeft voor andere functies.

Een programma dat last heeft van een geheugenlek blijft telkens wanneer het wordt uitgevoerd geheugen lekken totdat de fout is opgelost. Gelukkig bevatten software development kits vaak debuggers die de broncode van een programma kunnen controleren op geheugenlekken. Zodra de ontwikkelaar van het programma de fout vindt, kan die het programma bijwerken en een patch uitbrengen.

NOTE: Sommige programmeertalen, zoals Java en Python, gebruiken een techniek voor geheugenbeheer die "garbage collection" wordt genoemd. Deze maakt automatisch geheugen opnieuw vrij en kan veel (maar niet alle) fouten met geheugenlekken oplossen.

Bijgewerkt October 25, 2023 door Brian P.

quizTest je kennis

What Microsoft technology enables sharing an object between apps?

A
ActiveX
0%
B
DirectX
0%
C
OLE
0%
D
IIS
0%
Correct! Incorrect!     View the OLE definition.
More Quizzes →

Het Tech Terms computerwoordenboek

De definitie van Geheugenlek op deze pagina is een originele definitie geschreven door de auteurs van TechTerms.com. Als je naar deze pagina wilt verwijzen of deze definitie wilt citeren, gebruik dan de groene citatiebalk direct onder de definitie.

Ons doel is om computerterminologie op een begrijpelijke manier uit te leggen. We streven naar nauwkeurigheid en eenvoud bij elke definitie die we publiceren. Als je feedback hebt over deze definitie of een nieuwe technische term wilt voorstellen, neem dan contact met ons op.

De Tech Terms-nieuwsbrief

Verbeter je technische kennis met onze dagelijkse of wekelijkse nieuwsbrief! Abonneer je vandaag nog en ontvang nieuwe termen en quizzen in je inbox.

Schrijf je in voor de gratis TechTerms-nieuwsbrief

Hoe vaak wil je een e-mail ontvangen?

Je kunt je op elk moment uitschrijven of je frequentie wijzigen via de links in elke e-mail. Vragen? Neem contact met ons op.

Let op: de nieuwsbrief wordt in het Engels verzonden.