GlobalObjects
GloForgeter< T > Template-Klassenreferenz

Speziel für GloGenericPersistent oder abgeleitete Klassen von GloPersistent die Forget-Methode für std::shared_ptr. Mehr ...

#include <GloTypes.h>

Öffentliche Methoden

void operator() (T *ptr)
 

Ausführliche Beschreibung

template<typename T>
class GloForgeter< T >

Speziel für GloGenericPersistent oder abgeleitete Klassen von GloPersistent die Forget-Methode für std::shared_ptr.

Objekte des Typs GloGenericPersistent oder abgeleitete Klassen von GloPersistent haben einen Referenzzähler und dürfen nicht mittels des Destruktors aus den Speicher entfernt werden. Objekte mit Referenzzähler dürfen nur einmalig instanziiert werden. Bei Übergabe an eine andere Instanz wird über GloPersistent::remember() der Referenzzähler inkrementiert. Wenn die jetzt besitzende Instanz das Objekt nicht mehr braucht, wird über GloPersistent::forget() der Referenzzähler dekrementiert. Wenn der Referenzzähler auf 0 läuft, wird der Destruktors aufgerufen. Dieses macht der std::shared_ptr, wenn beim Instantiieren eines persistenten Objekts der GloForgeter mit übergeben wird.

Beispiel (PersClass ist die persistente Klasse):

std::shared_ptr<PersClass> t_NewPersObject( new PersClass(), GloForgeter<PersClass>() );
Siehe auch
GloPersistent::remember(), GloPersistent::forget().

Dokumentation der Elementfunktionen

◆ operator()()

template<typename T >
void GloForgeter< T >::operator() ( T *  ptr)
inline

Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:
GloForgeter
Speziel für GloGenericPersistent oder abgeleitete Klassen von GloPersistent die Forget-Methode für st...
Definition: GloTypes.h:985