-
habe ich denn einen Performance Vorteil, wenn ich eine benannte Aktivierungsgruppe verwende statt *caller?
z.B ein Auftrufstapel
pgmA = actgrp('A')
pgmB = actgrp('B')
pgmC = actgrp('C')
pgmD = actgrp('D')
oder
pgmA = actgrp('A')
pgmB = actgrp(*caller)
pgmC = actgrp(*caller)
pgmD = actgrp(*caller)
-
Der Performance-Vorteil ist nur minimal, da ACTGRP's nur beim Init etwas dauern.
Wichtig ist die Call-Reihenfolge bzw. Verwendung.
Häufig verwendete Programme können in einer eigenen gemeinsamen ACTGRP laufen, seltenere Aufrufe in einer eigenen.
Z.B.:
PGMA actgrp(A)
- call PGMC actgrp(X)
- call PGMD actgrp(X)
rclactgrp A
PGMB actgrp(B)
- call PGMC actgrp(X)
- call PGMD actgrp(X)
rclactgrp B
ACTGRP(C) bleibt also aktiv.
Es kommt auf das Design der Anwendung an, ggf. sind aber Service-Pgme performanter.
-
Wann sind Service Programme performanter, in einer eigenen oder *caller Actgrp?
Warum macht man den rclactgrp überhaupt? Ich muss zu geben, wir verwenden den bisher überhaupt nicht.
-
Den RCLACTGRP benötigt man nur, wenn man tatsächlich mal aufräumen muss.
In Batchanwendungen macht er eher selten Sinn, da normale Batchjobs sich beenden.
Bei Dauerläufern kann es dann Sinn machen, wenn sehr viele verschiedene Aktionen eher selten aufgerufen werden. Werden immer die selben Programme gestartet, spart man sich das Initialisieren.
Hilfreicher ist da aber meistens, ob sich ein Programm mit oder ohne *INLR=*ON beendet.
Wird ein solches Programm häufig aufgerufen, muss man wissen ob die *INZSR und der Init aller Felder tatsächlich benötigt wird.
Bei *INLR=*OFF und RETURN entfällt der mühsame Open aller Dateien. Allerdings bleiben ggf. gesperrte Sätze gesperrt !
In Service-Programme steckt man nur Funktionen, die sehr häufig von verschiedenen Programmen verwendet werden.
Aber auch hier: das Anwendungsdesign entscheidet.
-
 Zitat von Fuerchau
Den RCLACTGRP benötigt man nur, wenn man tatsächlich mal aufräumen muss.
Ah alles klar, da wir ja anständig Programmieren, bzw. es versuchen, brauchen wir ihn dann auch weiterhin nicht.
Und abermals vielen Dank.
-
Hallo,
bei Dauerläufern erfordert dann allerdings die Installation von Änderungen ein beenden des Programmes, damit die Änderung auch funzt.
Den ganzen Performance Kram kann man hier vergessen, Zeit wird meist ganz woanders in größeren Mengen vertrödelt!!!
mfg
Dieter Bender
PS: Beim Einsatz von Commit gibt es noch ein paar Aspekte zu berücksichtigen mit Activation Groups!
 Zitat von Xanas
Ah alles klar, da wir ja anständig Programmieren, bzw. es versuchen, brauchen wir ihn dann auch weiterhin nicht.
Und abermals vielen Dank.
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