Das OFFIZIELLE PROFAN SUPPORT FORUM
Einsteigerfragen
PROFAN-Programmierung
Helfer & Tools
Anregungen & Vorschläge
PROFAN-NEWS
Die Regeln!
2 - PROFAN-Programmierung

 Neues Thema  |  Zur Übersicht  |  Suchen  |  Einloggen   Vorherige Nachricht  |  Nächste Nachricht 
 Verwendung dynamischer Arrays in Prozeduren
Autor: Arndt Lindner (---.dip0.t-ipconnect.de)
Datum:   17.11.19 20:47

Dynamische Array sind nur eingeschränkt als Parameter bzw. Rückgabewerte in Prozeduren verwendbar. Der Code verdeutlicht das Problem, wenn man ihn laufen lässt und den Ressourcenverbrauch (Arbeitsspeicher) im Ressourcenmonitor verfolgt. Die Angabe "Arbeitssatz (KB)" wächst stetig an.
 proc testdynarray
 parameters longint n[]
 declare longint rw[]
   rw[] = n[]
   return rw[]
 endproc
 
 declare longint n1[], n2[]
 
   cls
   clear n1[], n2[]
   n1[5] = 1999999
   while 1  
      n2[] = testdynarray(n1[])
   endwhile
 end
 

In Programmen, die nur eine begrenzte Zeit laufen hat es bei mir noch keine Rolle gespielt. In einem Programm, das lange kontinuierlich laufen soll kommt es aber nach einigen Stunden zwangseise zum Absturz mit der Fehlermeldung:
 Exception EOutOfMemory in Modul test.exe bei 000075BB.
 Zu wenig Arbeitsspeicher.
 

Kennt jemand eine Möglichkeit das zu verhindern?

Viele Grüße
Arndt



 Beitrag beantworten  |  Foren-Liste  |  Alle Antworten   Neuerer Beitrag  |  Älteres Thema 

 Beiträge Autor  Datum
 Verwendung dynamischer Arrays in Prozeduren  Neu
Arndt Lindner 17.11.19 20:47 
 Re: Verwendung dynamischer Arrays in Prozeduren  Neu
Heinz Brill 18.11.19 16:38 
 Re: Verwendung dynamischer Arrays in Prozeduren  Neu
Arndt Lindner 18.11.19 17:45 
 Re: Verwendung dynamischer Arrays in Prozeduren  Neu
Heinz Brill 18.11.19 17:59 
 Re: Verwendung dynamischer Arrays in Prozeduren  Neu
Arndt Lindner 20.11.19 21:19 
 Re: Verwendung dynamischer Arrays in Prozeduren  Neu
Heinz Brill 21.11.19 16:27 


 Foren-Liste  |  Zur Registrierung 
 Benutzerlogin
 Benutzername:
 Passwort:
 Login-Daten speichern:
   
 Passwort vergessen?
E-Mail-Adresse oder Username unten eingeben. Dann wird Dir per e-Mail ein neues Passwort zugeschickt.

phorum.org