Einzelnen Beitrag anzeigen

TheGroudonx

Registriert seit: 21. Mai 2014
44 Beiträge
 
#1

Freigabe von Objekten (Observerpattern)

  Alt 21. Mai 2014, 13:46
Hallo,

ich habe folgendes Problem:

Infos:

Ich besitze ein ObjektX mit der Vererbung class(TInterfacedObject, IInterfaceX).
Dessen Referenz übergebe ich an ein normales Objekt.
Dieses normale Objekt meldet nun über das Interface Veränderungen an das ObjektX.

Problem:

Wenn das normale Objekt(befindet sich in einem Array) mit .free /.freeandnil / .destroy freigegeben wird,
wird das ObjektX scheinbar mitgelöscht, wodurch es beim Erstellen eines neuen
normales Objekts zu einer Zugriffsverletzung kommt. Ich konnte bisher etwas bezüglich eines Referenzzählers herrausfinden,
jedoch nicht wie die automatische Löschung umgehbar ist. Bisher bin ich deswegen gezwungen, auf .free zu verzichten.

Wenn ihr hilfreiche Tipps habt lasst es mich wissen
  Mit Zitat antworten Zitat