Ablaufverfolgung

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Die Ablaufverfolgung (englisch tracing) bezeichnet in der Programmierung eine Funktion zur Analyse von oder Fehlersuche in Programmen. Es handelt sich dabei um einen Cross-Cutting Concern.

Dabei wird z. B. bei jedem Einsprung in eine Funktion, sowie bei jedem Verlassen eine Meldung ausgegeben, sodass der Programmierer mitverfolgen kann, wann und von wo welche Funktion aufgerufen wird. Die Meldungen können auch die Argumente an die Funktion enthalten.

Zusammen mit weiteren Diagnose-Ausgaben lässt sich so der Programmablauf eines fehlerhaften Programmes häufig sehr schnell bis zu der fehlerverursachenden Funktion zurückverfolgen.

In Multithreading-Umgebungen ist die Ablaufverfolgung hilfreicher als Debuggen mit Setzen von Haltepunkten, da hierbei der aktuelle Thread nicht angehalten wird, was ansonsten dazu führen würde, dass der Kontext verfälscht wird und somit der gesuchte Programmfehler u. U. nicht wie gewünscht reproduziert werden kann.