Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> C /C + + Programming >> Content
Tools om een Geheugenlekkage zoeken
Wanneer een computerprogramma nodig heeft om informatie op te slaan , het eerst nodig heeft om geheugen toe te wijzen . Na die data niet langer nodig is , het programma deallocates het geheugen, zodat een ander programma kan gebruik van maken . Als een programma geheugen toewijst zonder daarna loslaten en het geheugen , zal dat programma een aanslag op systeembronnen geworden . Deze bugs worden " memory leaks " en het wegwerken van hen is een belangrijk onderdeel van debuggen . Proces

Ongeacht welke taal het programma is geschreven in , het fundamentele proces voor het vinden van memory leaks is hetzelfde . Ten eerste , het geheugen lek moet worden opgespoord . Een geheugenlek wordt meestal aangeduid met lineair toeneemt geheugengebruik , hoewel sommige gespecialiseerde tools die u direct kunt zien hoeveel geheugen een programma heeft toegewezen of deallocated . Zodra een geheugenlek wordt ontdekt moet worden geïsoleerd . Dit wordt gedaan door elke functie of object afzonderlijk bepalen waar de lekkage optreedt . Dan is de programmeur moet achterhalen van de specifieke fout die wordt veroorzaakt door het lek en te corrigeren .
C /C + +

Programma
geschreven in C en C + + zijn berucht voor het feit dat het geheugen lekken omdat de gebruiker moet handmatig toewijzen en vrijgeven geheugen met behulp van de malloc commando . De ccmalloc instrument bewaakt de malloc -functie en rapporteert wat geheugen niet werd deallocated , werd meerdere malen deallocated of zelfs toegekend zonder dat deze is deallocated in de eerste plaats . Andere meer gespecialiseerde programma's zoals NJAMD ( " Not Just Another Malloc Debugger " ) bestaan ​​ook voor het vinden van geheugenlekken in C en C + + .
MSDN

Ontwikkelaars
met behulp van Microsoft's ontwikkelomgeving kan het commando ml te gebruiken om het geheugen lekken te vinden . Typen ml bij de Cesh prompt verschijnt een lijst met elke actieve toepassing en de hoeveelheid geheugen die wordt gebruikt , geschreven als " r /w = " gevolgd door het aantal pagina's dat verzoek heeft toegewezen . Een onverwachte toename in geheugengebruik geven aan dat de toepassing een geheugenlek .
Java

Veel programmeurs
denken dat Java-programma's zijn immuun voor het geheugen lekken , omdat de programmeur is niet verantwoordelijk voor de toewijzing en het loslaten en het geheugen , maar ze doen nog steeds opduiken . Java virtual machine , de omgeving die Java programma implementeert , een automatische garbage collector die herinnering deallocates wanneer deze niet meer verwezen door andere klassen . Geheugen lekken kunnen optreden wanneer het geheugen wordt verwezen als het niet meer nodig , waardoor het boven de garbage collector worden overgeslagen . JProbe is een debugger die snapshots van geheugengebruik kan nemen als een Java-toepassing loopt , helpt programmeurs om de bron van een geheugenlek vinden .

Previous: Next:
  C /C + + Programming
·Bel Functie van Object C + + s…
·Hoe Reverse een waarde in C + …
·Hoe maak je een Vector van het…
·Hoe maak je een string maken i…
·Hoe te testen voor Mobile Auto…
·Hoe maak je een CSV-bestand le…
·Hoe te verwijderen van een C +…
·Hoe maak je een Geometry Calcu…
·Hoe naar kolommen toevoegen aa…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Wat is Scarlett Fever ? 
·Hoe te Input en Output Parameters ophale…
·Hoe maak je een Subroutine Call vanuit z…
·Hoe je Java Demonteer 
·Hoe maak je een USB Joystick in Visual B…
·Hoe maak je een Java animatie sneller lo…
·Hoe maak je een knop voor VBScripts 
·Hoe kan ik een record localiseren een Re…
·Hoe te lezen tekstbestanden met Visual B…
Copyright © Computer Kennis http://www.nldit.com