Frage

So meine Firma verwendet ein herrlich buggy Programm namens Rational Purify (ein plugin für Microsoft Visual Developer Studio) zu verwalten, die Speicher-Lecks.Das Programm ist geruhte zu lassen klicken Sie auf einen Speicherverlust, nachdem Sie Sie angetroffen haben, und springen Sie dann auf die Linie, dass das Leck auf.

Leider Reinigen defekt ist und Reinigen, wird nicht jump zu die Ort, dass das Leck aufgetreten ist, es wird nur auf die Klasse und die Methode, die das Leck in.Leider, manchmal ist dies ungefähr so nützlich wie die Einstellung ein Leitfaden, um Ihnen zu helfen zu jagen die Bären und mit ihm zeigen Sie auf den Wald und sagen Ihnen, es gibt Bären.

Hat jemand mit Reinigen, erleben Sie eine Idee haben, wie könnte ich dieses problem beheben oder eine gute Anleitung zu schauen, obwohl?

War es hilfreich?

Lösung

Im Allgemeinen haben Sie zwei Optionen, eine exclude-Module DLL ' s von den Messgeräten, die in zu Reinigen, hilft es, einige Male.Zweite ist, erhalten Sie BoundsChecker, bedeutet dies nicht, compile-Zeit-Instrumentierung, viel langsamer, aber der Detaillierungsgrad ist eine Größenordnung besser.

Im Allgemeinen verwenden wir Reinigen am check-in, sanity checks, und BoundsChecker, wenn wir wissen, dass ein Fehler/Absturz besteht.

BoundsChecker hat einige nette features, wie nur instrument-Dateien A.cpp & B.cpp ohne den rest.

Beachten Sie keines dieser beiden Anwendungen funktionieren unter 64-bit-Betriebssystemen und BoundsChecker werden nicht installieren auf 64-bit-OS.Die meisten frustrierend sein, wenn Sie den Wechsel zu 64-bit-Entwicklung mit 32 bit-port zurück!

Andere Tipps

Reinigen ist wie ein Schweizer Messer.Wenn Sie wissen, wie es zu benutzen, werden Sie einige Ergebnisse, nicht die beste, aber immer noch Ergebnisse.Wenn Sie nicht, es stürzt ab, weil es nur ein anderes Programm, das auf Windows läuft.

Am Ende müssen Sie viel Geduld, Umbauten und ein bisschen Glück.

Reinigen Sie kommt mit einem Skript namens ScanVSSolutionForPurifyPlus.pl die sorgen dafür, dass Ihre Projekt-Dateien haben alle die richtigen Einstellungen für Reinigen, um richtig zu arbeiten.Wenn Sie nicht führen Sie es, geben Sie ihm ein gehen.

(Ich habe persönlich verwendet ScanVSSolutionForPurifyPlus.pl auf eine große Lösung, und es funktionierte wie ein Charme.Ein VORBEHALT:wenn Sie geben Sie den Namen Ihres .sln die Datei, die Sie möglicherweise benötigen, um geben Sie den vollständigen Pfadnamen.)

Sind Sie sicher, dass Sie debug-build?Oder vielmehr haben Sie alle PDB s aktiviert?Versuchen WindDbg auf die ausführbare Datei und überprüfen Sie mit !lmi-Befehl, was sichtbar ist.

Ist der code richtig instrumentiert?

Auch erwägen, etwas anderes wie Kostenlose Visual Leak Detector oder von der Microsoft-tool LeakDiag.

Ich verwendet zu Reinigen über 5 Jahren.Es war wirklich flockig dann.Sie hielten Versprechen, beheben Sie alle Fehler in der 'nächsten release'.Wir Gaben es am Ende.Man kann sich nur Fragen, ob Sie Ihre eigenen QA-tools, die auf Ihre Produkte.Oh, die Ironie...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top