Derick Rethans ‚Blog: Valgrinding gemeinsame Module

In den Prozess der Entwicklung einiger er verschiedene gemeinsame Module tut für PHP, Derick Rethans stolperte über eine Frage mit der Verwendung von Valgrind um zu testen, seinen Code:

Während des Tests, ob ich mich richtig Speicher frei, mit Valgrind , rannte ich in der Frage, wo ich nicht sehen konnte, die Stack-Frames, wo die Speicherlecks aufgetreten in den Erweiterungen, und sobald ich lief sogar in einer Valgrind Fehler . Der Grund, warum Valgrind nicht zeigen konnte die Funktion Namen aus der Stack-Frames liegt daran, dass PHP bereits freigegebenen Erweiterungen aus dem Speicher entfernt.

A work-around er fand, war der Zusammenstellung der Module, aber er wollte etwas „richtig“ und weniger umständlich. Als Ergebnis, fügte er hinzu einen Scheck für die ZEND_DONT_UNLOAD_MODULES Umwelt-Flag auf der PHP-Kern verarbeitet diesem Fall speziell. Er umfasst einen Ausschnitt von Beispiel-Code zeigt die Valgrind Ergebnisse mit und ohne Fahne.

PHPDeveloper.org

Schreibe einen Kommentar