Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Unterbrechen des LMS-Laufs

&pagelevel(4)&pagelevel

Der LMS-Lauf kann durch den Benutzer oder durch das Programm unterbrochen werden.

Unterbrechen durch den Benutzer

Der Benutzer kann den LMS-Lauf durch Betätigen einer Programmunterbrechungstaste (z.B. K2) unterbrechen.

Die Fortsetzung des LMS-Laufs kann durch das /SEND-MSG-Kommando gesteuert werden, das wahlweise mit einem Eingabetext versehen werden kann. Dieser Eingabetext wird dann in der Unterbrechungsbehandlung von LMS interpretiert. Die gerade laufende Funktion wird von der Art des Abbruchs unterrichtet und beendet sich in der gewünschten Form. Die möglichen Eingaben sind beim Operanden DIALOG-CONTROL der Anweisung MODIFY-LMS-DEFAULTS beschrieben (siehe "MODIFY-LMS-DEFAULTS Ändern der globalen Default-Werte").

Unter LMS können noch weitere Programmsysteme wie z.B. der EDT aufgerufen werden. Diese Systeme besitzen u.U. eigene STXIT-Routinen. LMS legt immer einen eigenen STXIT-Verwaltungsblock an.

Verwenden andere Systeme andere STXIT-Routinen, so werden die dort zugehörigen Verwaltungsblocks mit denen von LMS verkettet bzw. umgekehrt.

Beim Eintritt eines Ereignisses werden alle zu diesem Ereignis gehörigen STXIT-Routinen aktiviert, d.h. neben den LMS-Routinen werden auch die Routinen anderer Systeme durchlaufen. Das bedeutet, dass die LMS-Routinen auch dann aktiviert werden, wenn das Unterbrechungsereignis nicht in LMS eintritt.

Ein gutes Beispiel dafür ist das SEND-MSG-Kommando. Über das SEND-MSG-Kommando können Meldungen an LMS und an alle anderen STXIT-Routinen, welche dieses Ereignis behandeln, geschickt werden.

Hinweis

Das SEND-MSG-Kommmando wird von allen zugehörigen STXIT-Routinen des gesamten Programmsystems behandelt, d.h. es kann zu Problemen führen, wenn einzelne Programmteile auf die gleiche Meldung unterschiedlich reagieren. Das Programm wird im Allgemeinen in dem Teilsystem fortgesetzt, in dem das Ereignis eintrat.

Abbruch des LMS-Laufs durch Fehler

Die Fehlerbehandlung wird ebenfalls über die STXIT-Routine gesteuert.

Bei Programmbeendigung, Angabe von /START-EXECUTABLE-PROGRAM, /LOAD-EXECUTABLE-PROGRAM, /CANCEL-JOB, /LOGOFF, /CANCEL-PROGRAM, /ABEND, /EXIT-JOB oder Leitungsverlust, wird sichergestellt, dass die Bibliotheken konsistent bleiben.

Für alle Fälle der Programmbeendigung gilt:

  • Alle STXIT-Routinen in LMS werden ausgeschaltet, um ein irreguläres Weiterarbeiten durch SEND-MSG zu unterbinden.

  • LMS simuliert ein END. Dadurch werden alle offenen Bibliotheken geschlossen.

Falls zum Zeitpunkt der Programmbeendigung noch Bibliotheken offen sind, werden diese geschlossen.