-
Der eigentliche CALL ist von der Performance absolut egal, ob Programm oder Procedure.
In beiden Fällen wird ein Instruction-Pointer verwendet.
Entscheidend ist da eher die "Initialisierungszeit" eines Programmes bzw. Serviceprogrammes.
Jede konstante Verknüpfung zu einem Programm/Procedure wird beim ersten Aufruf des Programmes initialisiert.
Hierzu wird das Objekt gesucht und der Einsprungspunkt ermittelt.
Je mehr Call's also im Programm stecken, desto mehr Objekte müssen ermittelt werden.
Bei Prozeduren ist es ein wenig anders.
Es kommt i.W. darauf an, wieviele verschiedene Serviceprogramme denn durch die Prozeduren benötigt werden.
Das ermitteln des Serviceprogrammes dauert genauso lange wie beim OPM-Programm.
Die Prozedurpointer werden dann allerdings über die exportierte Liste der Funktionen an Hand des internen Indexes zur Verfügung gestellt, also 1. Funktion = Index 1, 2. Funktion = Index 2, usw.
Dies erklärt im Übrigen auch, dass bei Neuerstellung eines Service-PGM's ohne BindaryLanguage mit eigener Signatur, sich diese Indizes auf Grund der Sortierung nach Namen verschieben können.
Stellst du also viele Funktionen über diverse OPM-Programme zur Verfügung dauert der Init letztlich länger als bei vielen Funktionen über wenige Serviceprogramme.
Ein paar Microsekunden kannst du per "CALL VARIABLE" gewinnen, da dann der Pointer erst beim ersten Aufruf besorgt wird. Solange sichdie variable dann nicht ändert bleibt der Pointer erhalten.
Das selbe kannst du mit Dieters "dynamschen Prozeduraufruf" erreichen.
Allerdings verlierst du dann Informationen für DSPPGMREF.
In der Gesamtbetrachtung einer Anwendung sind das Stellschrauben, die dir beim Programmstart letztendlich Microsekunden bringen werden.
Da sind eher andere Initialisierungen wie laden von Anwendungsparametern, Initialisierungen mit ungünstegen SQL's usw. viel entscheidender.
Anwendungsdesign mit Serviceprogrammen und Prozeduren bringen ansonsten erhebliche Vorteile.
Similar Threads
-
By Kirsten Steer in forum Archiv NEWSblibs
Antworten: 0
Letzter Beitrag: 17-01-03, 11:57
-
By MKnoll in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 19-11-02, 15:21
-
By areichelt in forum NEWSboard SAP
Antworten: 2
Letzter Beitrag: 24-02-02, 16:44
-
By MichaZ in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 06-08-01, 21:54
-
By tomski in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 14-12-00, 21:16
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