Lade...
 

DeleteObject

DeleteObject

DeleteObject, DeleteObject(pattern)

Stack
Stack   Beschreibung
Stack(In)   persistentes/transientes Objekt
Stack(Out)   -

Das Objekt wird

Die Operation ist zu CreatePersObject / CreateTransObject(,KEEP) invers, d.h. aus den Collections, in die es durch CreatePersObject eingetragen wurde, wird es durch DeleteObject entfernt. Um zu vermeiden, dass viele Collections umsonst durchsucht werden, richtet sich auch DeleteObject nach den mit SetLayer, SetDomain(WRITE) und SetPattern getroffenen Einstellungen.
Den Zusammenhang zwischen Layer, Domain und Bitpattern für Inheritance zeigt folgendes Beispiel sowie folgendes Code-Beispiel.

Transiente Objekte werden durch DeleteObject logisch gelöscht und anschleißend an der GarbageColleciton angemeldet (CX_GARBAGE_MANAGER։։Register), sodass das Objekt gelöscht wird, sobald es durch keine Variable mehr referenziert wird. 

Ein per DeleteObject gelöschtes Objekt kann mit UndeleteObject wieder reaktiviert werden. Bei transienten Objekten wird lediglich der logische Löschstatus zurückgesetzt, das Objekt wird nicht bei der GarbageCollection wieder abgemeldet.

Ein Objekt kann mittels der Funktion CX_SIMPLE::Deleted() abgefragt werden, ob es (logisch) gelöscht ist oder nicht.

 

Siehe auch: