-
Das lass nicht die Java-Fraktion hören.
Fehler gehören in den Bereich "Ausnahmen" und müssen eben gesondert behandelt, also aufgefangen werden.
Das Hauptproblem besteht eben in den Prozedur-Aufrufen !
Solange man noch klassisches RPG betrieb konnte man mit *PSSR ganz gut arbeiten. Zumal ja ein EXSR tatsächlich kein echter Unterprogramm-Aufruf ist sondern eine versteckter GOTO.
Das Programm merkt sich für jede BEGSR genau eine Rücksprung-Adresse. Der EXSR setzt die Adresse, der ENDSR führt den GOTO zu dieser Adresse aus. Ein vorzeitiger Return aus einer BEGSR ist nicht möglich.
Deshalb kommt es ja zu Programm-Endlosschleifen, wenn durch zufällige Rekursion der Rücksprung verändert wird.
EXSR R1 // Folge-Adresse merken in XR1
BEGSR R1
EXSR R2 // Folge-Adresse merken in XR2
ENDSR // GOTO XR1
BEGSR R2
EXSR R1 // Folge-Adresse merken in XR1 !!!!!
ENDSR // GOTO XR2
Durch tatsächliche Prozeduren ist das genauso zu sehen wie mit Programm-CALL's.
Wenn nun eine Ausnahme zum Aufruf der PSSR führt, kann diese auch in der untersten Stack-Ebene aufgetreten sein !
Da kann man meist nicht einfach die letzte Aktion wiederholen.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks