| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringssprog
  • Delphi programmering
  • Java programmering
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl programmering
  • Python Programming
  • Ruby Programming
  • Visual Basics Programmering
  •  
    Computer Viden >> Programmering >> C /C + + Programming >> Content
    Sådan Find en Memory Leak i Linux
    modsætning nyere programmeringssprog såsom Java og Python, programmeringssprog som C kræver programmøren at styre sin egen hukommelse . C tilbyder faciliteter til at anmode om ledig hukommelse og returnere det til operativsystemet , men intet mere. Fordi sprog som C tilbyder ingen garbage collection mekanisme til at rense ud objekter, der er ikke længere er i brug, skal programmøren være på vagt og fjerne objekter , når de ikke længere er nødvendige . Hvis et program ikke slippe af sine uudnyttede genstande , kan den deraf memory leak medføre, at operativsystemet til at gå ned . Instruktioner
    1

    Installer " Valgrind " debugging suite.

    Valgrind pakke er frit tilgængelig på alle Linux-distributioner. For at installere det på Debian -afledte distributioner som Ubuntu , skal du skrive " sudo apt- get install valgrind . " På RedHat eller Fedora, "install sudo yum valgrind . " Type
    2

    Kompiler dit program med fejlsøgningssymboler .
    P mest almindelige compiler til C- programmer på Linux-systemer er gcc . Brug " - g " flag for at instruere gcc at omfatte fejlsøgningssymboler i binære , at det skaber . ( Fejlsøgningssymboler er nødvendige for debuggers som valgrind at henvise til specifikke problemer i din kode ) .
    P Hvis du har et C-program ved navn " memoryhog.c ". for eksempel, ville du kompilere det ved hjælp af denne kommando: gcc- g memoryhog.c
    3

    Kør dit program binære gennem Valgrind

    Medmindre du fortæller det ellers , gcc . vil navngive dit program " a.out ". For at køre din binære hedder " a.out " ved hjælp Valgrind skrive denne kommando : . Valgrind - lækage -check = fuld - show- nås = ja /a.out
    4

    Efterse output af Valgrind

    Hvis alle memory leaks er blevet fastsat , Valgrind rapporter " alle bunke blokke blev løsladt - . ingen utætheder er muligt".
    p Hvis nogen memory leaks er til stede , Valgrind lister linjenummer , hvor lækagen er oprettet.

    Forrige :

    næste :
      Relaterede artikler
    ·Hvordan man skriver en Visual C program, der bruger en …
    ·Sådan Control Stepper Motors Brug Dev -C + + 
    ·Hvordan laver man en MFC Worker Tråd 
    ·Sådan Læs SQL Fra Visual C 
    ·Sådan bruges Funktion Skabelon Overbelastning i C + + 
    ·Sådan Kombiner en fil ved hjælp C + + 
    ·Sådan Grow Matricer i C + + 
    ·Sådan Reverse bekendtgørelse af en vektor i C + + 
    ·Sådan oprettes en C + + klasse 
    ·Sådan Indtast en String fra tastaturet 
      Anbefalede Artikler
    ·Maya Python Tutorial 
    ·Sådan bruges SetDIBits i VB.NET 
    ·Sådan Udskift Streger i Visual Basic 
    ·Hvordan laver MFC interface Tråde 
    ·Årsager til en Java Lang inkompatibel Class Change Fej…
    ·GTK Theme Tutorial 
    ·Sådan Indsæt en Record Into VBA Database 
    ·Sådan får du en password beskyttet URL Med Java 
    ·Sådan Skil i C # 
    ·Sådan oprettes en Message Box i en separat tråd i Jav…
    Copyright © Computer Viden http://www.computerdk.com