ENDFORM - werden lokale Daten verworfen?

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
2 Beiträge • Seite 1 von 1
2 Beiträge Seite 1 von 1

ENDFORM - werden lokale Daten verworfen?

Beitrag von DeathAndPain (Top Expert / 1944 / 257 / 413 ) »
Hallo zusammen,

eine Frage beschäftigt mich, auf die hier vielleicht jemand eine Antwort weiß. Bei FORMs ist es ja (im Gegensatz etwa zu Funktionsbausteinen und ich glaube, auch zu Methoden) so, dass alle lokal mit DATA definierten Variablen bei jedem Aufruf der FORM initial sind (wer das nicht will, nimmt STATICS statt DATA). Was ich mich jetzt frage: Bedeutet das, dass die FORM an ihrem Ende auch den Speicherplatz aller lokalen Variablen sofort wieder freigibt, oder bleibt dieser trotzdem bis zum Programmende belegt? Bei internen Tabellen ist es ja z.B. so, dass das Löschen einzelner Zeilen nicht dazu führt, dass ABAP Speicher freigibt. Will ich den Speicher schon vor Programmende freigeben, dann muss ich explizit den FREE-Befehl nutzen.

Um meine Frage auf den Punkt zu bringen: Wenn ich in einer Form eine dicke interne Hilfstabelle anlege, die die Form für ihre Berechnungen braucht, die aber nach dem Verlassen der Form keine Bedeutung mehr hat, macht es dann Sinn, als letzten Befehl in der Form FREE HILFSTABELLE zu schreiben, oder macht der Interpreter das schon von sich aus?

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: ENDFORM - werden lokale Daten verworfen?

Beitrag von lausek (ForumUser / 64 / 2 / 20 ) »
Hi,

also in der Regel ist es ja so, dass lokale Daten auf dem Stack abgelegt werden. Willst du eine Tabelle aus dem lokalen Kontext rausbekommen, musst du sie irgendwie auf den Heap kopieren. Ich hatte schon mehrmals den Fall, dass Referenzen auf lokale Tabellen nach dem Verlassen auf bereinigten Speicher zeigten, weil die Umgebung irgendwie doch nicht so clever war wie vermutet.

Kurz: Nein, um diese Form der Speicherverwaltung sollte man sich in ABAP keine Sorgen mehr machen

Kannst du auch damit mal testen (o_ptr zeigt auf "FREED STACK"):

Code: Alles auswählen.

TYPES t_kna1_tt TYPE STANDARD TABLE OF kna1 WITH EMPTY KEY.

DATA o_ptr TYPE REF TO t_kna1_tt.

PERFORM test CHANGING o_ptr.

FORM test CHANGING co_ptr TYPE REF TO t_kna1_tt.

  DATA li_kna1 TYPE t_kna1_tt.

  SELECT *
    FROM kna1
    INTO TABLE li_kna1
    UP TO 10 ROWS.

  GET REFERENCE OF li_kna1 INTO co_ptr.

ENDFORM.

Folgende Benutzer bedankten sich beim Autor lausek für den Beitrag:
DeathAndPain


Seite 1 von 1

Vergleichbare Themen

2
Antw.
1978
Views
Hostorie - Lokale Daten
von ICO-Man » 26.04.2007 16:02 • Verfasst in Basis
0
Antw.
1363
Views
Optionen - Lokale Daten - Verzeichnis für Dokumente
von MartinZapf » 25.11.2016 08:13 • Verfasst in Sonstige Module
3
Antw.
2019
Views
Auf "Verzeichnis für lokale Daten" zugreifen
von rueschenbaum » 01.04.2006 12:19 • Verfasst in ABAP® Core
2
Antw.
1971
Views
Form / Endform in Layout funktioniert nicht
von Kona » 02.05.2006 11:30 • Verfasst in Web-Dynpro, BSP + BHTML
7
Antw.
2643
Views
Lokale Tabellen.
von Dzhan » 24.06.2008 10:22 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 18 Stunden von black_adept gelöst 23 / 3839
User Exit EXIT_RQCPRM10_001
vor 19 Stunden von a-dead-trousers 2 / 330
Trennen Strasse und Hausnummer
Gestern von payten 13 / 10700
Daten an Tabelle binden
Gestern von Lukas Sanders 2 / 1381

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 18 Stunden von black_adept gelöst 23 / 3839
User Exit EXIT_RQCPRM10_001
vor 19 Stunden von a-dead-trousers 2 / 330
Trennen Strasse und Hausnummer
Gestern von payten 13 / 10700
Daten an Tabelle binden
Gestern von Lukas Sanders 2 / 1381

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2912
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9506