next up previous
Nächste Seite: Call Aufwärts: Bibliotheksmoduln Vorherige Seite: ASCII

Break

Mit Hilfe des Moduls Break kann ein Programm sehr flexibel auf die durch das DOS generierten Signale bei [C], [D], [E] und [F] reagieren.

Mit Hilfe der Prozedur SetBreakMode kann festgelegt werden, auf welche dieser vier Signale überhaupt geachtet werden soll. Bei Programmstart ist dies nur [C].

Die Prozedur ExitBreak schreibt den Text ,,*** BREAK`` auf den Bildschirm und beendet das Programm.

TestBreak überprüft, ob eines der erlaubten Signale eingetroffen ist und beendet in diesem Fall über ExitBreak das Programm.

Durch GetBreak kann man sich die bis dahin eingetroffenen Signale ansehen und je nach Fall entsprechend reagieren; z.B. bei [C] mit Programmabbruch, bei [D] mit Beendigung der aktuellen Datei, bei [E] mit Beendigung des aktuellen Arbeitsganges usw.

Der einfache Aufruf von InstallException bewirkt, dass man sich um eine Abfrage nicht mehr selbst kümmern muss. Das Programm wird durch [C] -- unter Umständen mehrfach nötig -- asynchron mit der BREAK-Meldung beendet. RemoveException stellt den Normalzustand wieder her. Das diese Prozedur nur auf [C] wirkt, ist eine Mischung beider Methoden durchaus möglich.


\begin{warning}
Ein asynchroner Programm-Abbruch kann zum Sy\-stem-Ab\-sturz f\u...
...d in diesem Fall den Wunsch des Benutzers nach Abbruch
ignorieren.
\end{warning}
Die einfachste Methode ist also der IMPORT von Break und dann ein Aufruf von InstallException, die sicherere Methode besteht darin, beispielsweise innerhalb einer Schleife, insbesondere bei Ausgaben auf den Bildschirm, TestBreak aufzurufen.


next up previous
Nächste Seite: Call Aufwärts: Bibliotheksmoduln Vorherige Seite: ASCII
Claudio Nieder 2000-11-12