Na ovoj stranici

Otkrijte curenje memorije pomoću Memchecka

Pomoću alata Memcheck iz Valgrindova Tool Suitea možete otkriti probleme povezane s upravljanjem memorijom u aplikacijama. Koristite alat zajedno s GDB otklanjivačem pogrešaka. Kada se problem otkrije, izvršavanje aplikacije se prekida i možete je otkloniti pogrešaka.

Napomena: Memcheckmožete instalirati i pokrenuti lokalno na Linuxu. Možete ga pokrenuti na udaljenom hostu ili uređaju s bilo kojeg računala. Na Windowsima možete koristiti Heob heap observer za dobivanje sličnih rezultata.

Nakon što preuzmete i instalirate Valgrind alate, možete koristiti Memcheck s adrese Qt Creator.

Za otkrivanje curenja memorije u aplikacijama:

  1. Idite u način rada Projects i odaberite konfiguraciju za debugiranje.
  2. U odabiraču načina rada odaberite Debug > Memcheck.

    Pregled Memchecka

  3. Odaberite Počni za pokretanje aplikacije.
  4. Koristite aplikaciju za analizu.
  5. Odaberite Stani da biste vidjeli rezultate analize u Memory Issues.

Pregledajte probleme s memorijom

Dok aplikacija radi, Memcheck radi sljedeće:

  • Provjerava sva čitanja i pisanja u memoriju.
  • Prikazuje pozive koji dodjeljuju ili oslobađaju memoriju ili stvaraju ili brišu blokove memorije.

Rezultate možete vidjeti kada zaustavite Memcheck.

Odaberite redak da vidite mjesto na kojem se dogodio curenje memorije i trag poziva koji pokazuje što ga je uzrokovalo.

Kao alternativu prikupljanju podataka odaberite Otvoreno za učitavanje vanjske zapisne datoteke u XML formatu u prikaz Memcheck.

Premjestite miš na redak kako biste vidjeli više informacija o funkciji.

Za kretanje između redaka odaberite Prethodni ili Sljedeće.

Za filtriranje rezultata odaberite Filtriraj, a zatim odaberite vrste problema koje želite prikazati u prikazu. Možete pregledavati i sakriti sigurne i moguće curenja memorije, neinizicirane vrijednosti, neispravne pozive free() i vanjske pogreške.

Za više informacija o korištenju alata Memcheck pogledajte odjeljak Tumačenje izlaza alata Memcheck u dokumentaciji za Valgrind.

Vidi također Kako: Analizirati, profilirati izvršavanje funkcija, Pokrenuti Valgrind alate na vanjskim aplikacijama, Specificirati Valgrind postavke za projekt, Analizatori, Valgrind Callgrind, Valgrind Memcheck i Analiziranje koda.

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.