Einzelnen Beitrag anzeigen

skyphab

Registriert seit: 16. Apr 2004
17 Beiträge
 
Delphi 7 Enterprise
 
#1

Speicherverwaltung und .Free

  Alt 16. Jun 2004, 10:38
Hallo zusammen,

da ich zur Zeit mit Objekten und Objektlisten hantiere für ein Programm, dass 24h am Tag 7 Tage die Woche laufen muss (quasi immer ), ist es natürlich wichtig, dass der Speicher nicht irgendwann volläuft, weil ich instanzierte Objekte nicht richtig freigebe.

Daher meine Frage was ich beachten muss.
In einem Fall habe ich vier Klassen, die jeweils eine ObjectList haben und in dieser ObjectList 1..n instanzierte Objekte 'ablegen' (Abgelegt werden nur Zeiger auf die Objekte, oder wie ist das?).

Im Verlauf des Programms gibt es ein wildes Erstellen, Löschen, Hinzufügen, Neuerstellen von diesen Objekten und deren Listen, also muss das sauber laufen.
Die ObjectList erstelle ich mit dem Parameter true (OwnsObjects). Wie ist jetzt der saubere Weg, das Objekt und alle zugehörenden Objekte freizugeben?
Wenn ein Objekt der obersten Klasse gelöscht wird und ich es im destructor über Self.Free freigebe, sollte die Objektliste im gleichen Zuge freigesetzt werden, oder bedarf es dazu erst einem Objektliste.Free?
Die ganze Freisetzung muss sich dann durch alle Objekte ziehen, klappt das so oder muss ich noch etwas beachten?

Woran erkenne ich, ob das funktioniert?
Danke schonmal
  Mit Zitat antworten Zitat