programmerere som jobber i programmeringsspråket C er i stand til å dynamisk allokere minne . Når minnet er tildelt , skal det deallocated senere slik at maskinen vet det kan bruke dette minnet til andre formål. Et program som ikke deallocate ikke alle minnet har en minnelekkasje . Minnelekkasjer kan være et resultat av slurvete programmering eller en hard -to -find bug, men uansett verktøy finnes for å bidra til å eliminere minnelekkasjer fra koden . ccmalloc
ccmalloc verktøyet kan være knyttet til et program for å overvåke hvordan den bruker minne. Den vil fortelle deg hvor mye minne ble tildelt og deretter deallocated , hjelper deg å finne lekkasjer , og det vil også rapportere tilbake om noen overskrevet minneplasser, ikke-initialisert minne , forsøker å skrive data til deallocated eller minnekortet som ble deallocated flere ganger. Ved hjelp ccmalloc sammen med en god debugger vil gjøre koden bruker minne ressurser mye mer effektivt. Navnet er en referanse til malloc , C -funksjonen brukes for hukommelse tildeling.
NJAMD
NJAMD , som står for " ikke bare en malloc debugger" tildeler en stor blokk av data og deretter meer det ut som programmet blir analysert trenger det. Dette gjør NJAMD å analysere nøyaktig hva som skjedde med tildelte minnet etter at programmet har kjørt ferdig . Dette verktøyet har en rekke alternativer som gjør at koder for å velge hvor nært NJAMD vil se etter minnelekkasjer . Mer uttømmende søk vil ta mye lengre tid .
Mpatrol
mpatrol debugging verktøyet lager en fast størrelse matrise og deretter tildeler minne til programmet fra denne matrisen . Den mpatrol verktøyet deler mange funksjoner med andre minne lekkasje deteksjon verktøy, men den kan også brukes til å se hvor godt et program kjører med begrensede ressurser ved å angi et relativt lite utvalg for programmet å bruke . Selv for et program uten minnelekkasjer , kan dette verktøyet teste hvor effektivt det fungerer .
CMemLeak
Ikke alle minnelekkasje verktøy er komplisert. CMemLeak , for eksempel sporer bare noen funksjonskall , men unngår noen av de mentale overhead med å lære å bruke fullverdige minnelekkasje deteksjon verktøy. For folk som skriver kortere programmer , eller som kode sjeldnere , kan et enklere verktøy som får jobben gjort være et bedre valg .