Inhoudsopgave:

Wat is een Java-geheugenlek?
Wat is een Java-geheugenlek?

Video: Wat is een Java-geheugenlek?

Video: Wat is een Java-geheugenlek?
Video: CS50 2013 - Week 5, continued 2024, Mei
Anonim

Wat is een? Geheugenlek in Java ? De standaarddefinitie van a geheugenlek is een scenario dat optreedt wanneer objecten niet langer door de toepassing worden gebruikt, maar de Garbage Collector ze niet kan verwijderen geheugen – omdat er nog steeds naar wordt verwezen.

Wat veroorzaakt geheugenlek in Java?

EEN Geheugenlek is een situatie waarin er voorwerpen op de hoop aanwezig zijn die niet meer worden gebruikt, maar de vuilnisman kan ze niet verwijderen geheugen en dus worden ze onnodig onderhouden. EEN geheugenlek is slecht omdat het blokkeert geheugen bronnen en verslechtert de systeemprestaties in de loop van de tijd.

Vervolgens is de vraag, kunt u een geheugenlek hebben in Java? Het korte antwoord: een competente JVM heeft geen geheugenlekken , maar meer geheugen kan worden gebruikt dan nodig is, omdat niet alle ongebruikte objecten hebben vuilnis opgehaald, nog niet. Ook, Java apps zelf kan verwijzingen naar objecten bevatten die ze niet meer hebben nodig hebben en dit kan resulteren in een geheugenlek.

Dus, hoe repareer je een geheugenlek in Java?

2) Schakel delen van uw code handmatig uit en in en observeer het geheugengebruik van uw JVM met behulp van een JVM-tool zoals VisualVM

  1. Zorg ervoor dat u het als uw eigen gebruiker uitvoert en niet als sudo.
  2. Voer een volledige update van uw systeem uit (sudo yum update).
  3. Opnieuw opstarten helpt.
  4. Probeer alle actieve Java-toepassingen te sluiten.

Wat kan een geheugenlek veroorzaken?

Geheugenlek . In de informatica is een geheugenlek is een soort hulpbron lek die optreedt wanneer een computerprogramma verkeerd beheert geheugen toewijzingen op een zodanige manier dat geheugen die niet meer nodig is, wordt niet vrijgegeven. Een ruimte lek treedt op wanneer een computerprogramma meer gebruikt geheugen dan nodig.

Aanbevolen: