externe speicherüberwachung (winxp)
-
kennt jemand n tool mit dem ich ein programm überwachen kann und das mir sagt ob das programm ein speicherleck erzeugt?
mir reicht ein klares ja oder nein... ich brauch nich zu wissen wo das speicherleck is
-
Dafür gibts Tools wie BoundsChekcer oder Puriyfy. Aber 100% Sicherheit kriegst du auch damit nicht. Die meisten zeigen eher zu viel an. Das heisst man muss feststellen ob es sich wirklich um eine Leiche handelt. Dummerweise verhalten sich auch viele Systemkomponenten (made by Microsoft) beim Umgang mit Speicher etwas eigenartig.
Beispielswiese puffert die COM-Library BSTR's, d.h. sie werden auch nachdem du sie freigegeben hast nicht direkt wieder der Speicherverwaltung zur Wiederverwendung zurückgegegeben.
http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q139/0/71.asp&NoWebContent=1
Wenn du Hinweise auf Leichen hast können solche Tools jedoch recht hilfreich sein. Wenn du einem Kunden jedoch ne schriftliche Garantie geben willst, lass es besser.mfg JJ
-
BoundsChecker is the premier run-time error detection and debugging tool for C++ developers.
ne das is viel zuviel
ich möcht nur ein gaaanz simples tool das prüft ob das programm nach dem ändern sämtlichen speicher freigegeben hatdas mit den bstrs is egal
benutz ich grad eh nich
-
Tja, umsonst ist der Tod
Wenn nicht, dann bleibt nur, sofern MSVC, die Nutzung der "eingebauten" Unterstützung durch den Debug-Heap. Ich krieg übrigens keine Provison von den beiden genannten, in der Firma benutzen wir beide (Windows/Unix).Ob es kostenlose Alternativen, insbesondere für Windows gibt, weiss ich nicht. Trivial ist eine UMFASSENDE Prüfung der Speicherzugriffe sicher nicht, daher wahrscheinlich auch die Preise.
mfg JJ
-
was gibts da passendes in msvc und greift das auch bei qt oder nur für mfc/winapi
-
Gilt wohl für C++ allgemein:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvc60/html/memleaks.asp
Interessant ist auch nachfolgendes Buch:
http://www.amazon.de/exec/obidos/ASIN/020170238X/qid=1094331430/sr=1-66/ref=sr_1_2_66/302-5529189-5552820mfg JJ