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:
- Idite u način rada Projects i odaberite konfiguraciju za debugiranje.
- U odabiraču načina rada odaberite Debug > Memcheck.

- Odaberite
za pokretanje aplikacije. - Koristite aplikaciju za analizu.
- Odaberite
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
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
ili
.
Za filtriranje rezultata odaberite
, 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.