Care este cel mai bun detector gratuit de scurgeri de memorie pentru un program C/C++ și DLL-urile sale plug-in? [închis] (Programare, C++, C, Studio Vizual, Scurgeri De Memorie)

Jim Buck a intrebat.

Am un fișier .exe și multe module .dll plug-in pe care le încarcă fișierul .exe. (Am sursa pentru ambele.) O soluție cross-platform (cu sursă) ar fi ideală, dar platforma poate fi restrânsă la WinXP și Visual Studio (7.1/2003 în cazul meu).

Detectorul de scurgeri încorporat VS oferă doar linia de unde a fost apelat new/malloc, dar am un wrapper pentru alocări, așa că o urmă de stivă simbolică completă ar fi cea mai bună.

De asemenea, detectorul ar fi capabil să detecteze o scurgere atât în modulul .exe, cât și în modulele .dll care îl însoțesc.

Comentarii

  • saunalahti.fi/~tarmpika/diagnostic Am încercat atât de multe detectoare de scurgeri de memorie încât este dificil să le număr pe toate. Unele dintre ele s-au blocat, unele au produs rezultate invalide, altele pur și simplu nu au ajutat. Administrat / nativ / 32 & arhitecturi pe 64 de biți acceptate. Acesta însă nu este gratuit pentru moment. –  > Por TarmoPikaro.
  • A publicat și codul sursă: sourceforge.net/projects/diagnostic –  > Por TarmoPikaro.
  • Oh, frumos! (Apropo, nu mi-am dat seama că asta a devenit off-topic….după 5,5 ani! 🙂 ) shrug Asta e încă super-relevant pentru programare. Nu știu unde altundeva ar trebui să meargă asta. –  > Por Jim Buck.
7 răspunsuri
Zooba

Eu personal folosesc Detector vizual de scurgeri, deși poate cauza întârzieri mari atunci când sunt scurgeri de informații în blocuri mari (afișează conținutul întregului bloc scurs).

Comentarii

  • Instrument extrem de util și foarte simplu! Îmi place. Mulțumesc pentru indiciu! –  > Por Knasterbax.
  • Diagnostic – detectarea scurgerilor de memorie: sourceforge.net/projects/diagnostic În comparație cu Visual Leak Detector, nu necesită nicio integrare în proiectul gazdă (dacă nu doriți să aveți detectarea scurgerilor de memorie ca fiind integrată în aplicație) –  > Por TarmoPikaro.
davidag

Dacă nu doriți să recompilați (așa cum cere Visual Leak Detector), v-aș recomanda WinDbg, care este atât puternic cât și rapid (deși nu este atât de ușor de utilizat pe cât s-ar putea dori).

Pe de altă parte, dacă nu doriți să vă încurcați cu WinDbg, puteți arunca o privire la UMDH, care este de asemenea dezvoltat de Microsoft și este mai ușor de învățat.

Aruncați o privire la aceste link-uri pentru a afla mai multe despre WinDbg, scurgeri de memorie și gestionarea memoriei în general:

Comentarii

  • Din păcate, primul link nu mai funcționează … –  > Por tommyk.
  • Am adăugat mai multe link-uri și l-am eliminat pe cel care nu funcționează. Sper că vă ajută! –  > Por davidag.
Anders Sandvig

Am avut experiențe bune cu Rational Purify. Am auzit lucruri bune și despre Valgrind.

MastAvalons

În ceea ce mă privește, eu folosesc Deleaker pentru a localiza scurgeri. Sunt mulțumit.

Stewart Lynch

Profilatorul meu de memorie disponibil gratuit MemPro vă permite să comparați 2 instantanee și oferă urme de stivă pentru toate alocările.

Agnel Kurian

Încercați Detectorul de scurgeri de memorie al lui Jochen Kalmbach pe Code Project.URL-ul către cea mai recentă versiune era undeva în comentarii când am verificat ultima dată.

Idanuda

După cum a postat mai mulți prieteni ai mei, există multe detectoare de scurgeri gratuite pentru C++. toate acestea vor cauza un supraîncărcare atunci când vă rulați codul, aproximativ 20% mai lent. prefer Visual Leak Detector pentru Visual C++ 2008/2010/2012 , puteți descărca codul sursă de la – introduceți descrierea linkului aici .