Wenn Sie einen Unterbrechungspunkt definieren, können Sie ihn zu einem bedingten Unterbrechungspunkt machen (ob dort gestoppt werden soll oder nicht), indem Sie diese Parameter auf der Seite Optionale Parameter eines Unterbrechungspunktassistenten angeben (üblicherweise durch Bearbeiten eines bestehenden Unterbrechungspunkts):
| Optionaler Unterbrechungspunktparameter | Beschreibung | Typ des unterstützten Unterbrechungspunkts |
|---|---|---|
| Thread | Unterbrechungspunkte können threadspezifisch sein. Im Assistenten können Sie angeben, ob der Unterbrechungspunkt für alle Threads gelten soll (der Standardwert) oder nur für einen bestimmten Thread (n=one). |
Dieser Parameter wird von allen Unterbrechungspunkttypen unterstützt. |
| Häufigkeit | Verwenden Sie die Steuerelemente für die Häufigkeit, um anzugeben,
wann der Debugger an einem Unterbrechungspunkt stoppen und wann er
ihn überspringen soll. Der Debugger zeichnet auf, wie oft er auf jeden
Unterbrechungspunkt stößt. Die Felder in diesem Abschnitt geben dem Debugger
vor, beim wievielten Aufeinandertreffen mit einem bestimmten Unterbrechungspunkt er das erste Mal
stoppen soll, wie oft er stoppen soll und beim wievielten Mal er nicht mehr
stoppen soll. Mit den folgenden Parametern wird die Häufigkeit für den Unterbrechungspunkt definiert:
|
Dieser Parameter wird von allen Unterbrechungspunkttypen unterstützt. |
| Ausdruck | In dieses Feld können Sie einen Ausdruck eingeben. Die Ausführung des Programms
wird bei diesem Unterbrechungspunkt nur dann gestoppt, wenn die in diesem Feld
angegebene Bedingung wahr ist. (Jeder Wert ungleich Null wird als wahr betrachtet.) Wenn Sie zum Beispiel ein Debug für ein C++-Programm durchführen, können Sie den folgenden Ausdruck eingeben:
Ein Bedingungsausdruck ist jeder gültige Ausdruck in der Sprache der Arbeitsumgebung des Unterbrechungspunkts, der als Zahl ausgewertet werden kann und weder Nebeneffekte hat noch das Aufrufen einer Funktion bewirkt. Für C und C++ bedeutet dies, dass alle Zuordnungsoperatoren und die Inkrement- und Dekrementoperatoren (++ und --) nicht erlaubt sind. Achtung: Auch wenn
es den Anschein hat, dass eine Anwendung an einem Unterbrechungspunkt, dessen Bedingung nicht
wahr ist, nicht stoppt, setzt der Debugger die Anwendung vorübergehend aus, während er
an der Auswertung der Bedingung arbeitet. In den meisten Fällen ist diese kurze Pause
unerheblich. Bei einer Multithread-Anwendung kann dies jedoch dazu führen, dass das Betriebssystem
die Reihenfolge ändert, in der die Threads zugeteilt werden.
Anmerkung:
|
Zeile, Eingang und Adresse. |