System.Win.ComObj.TComObject.RefCount
Delphi
property RefCount: Integer read FRefCount;
C++
__property int RefCount = {read=FRefCount, nodefault};
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
property | public | System.Win.ComObj.pas System.Win.ComObj.hpp |
System.Win.ComObj | TComObject |
Beschreibung
Bezeichnet die Anzahl der Referenzen auf das aktuell verwendete COM-Objekt.
Mit RefCount kann der Zeitpunkt bestimmt werden, zu dem das Objekt freigegeben werden kann. RefCount enthält die Anzahl der Referenzen auf Schnittstellen, die vom COM-Objekt implementiert werden. Wenn RefCount den Wert Null hat, kann das Objekt freigegeben werden.
RefCount wird automatisch inkrementiert, wenn Referenzen auf Schnittstellen erzeugt werden, die im COM-Objekt implementiert sind. Bei der Auflösung dieser Referenzen erfolgt die Dekrementierung ebenso automatisch. Die Inkrementierung geschieht normalerweise mit der Methode AddRef von IUnknown und die Dekrementierung mit der Methode Release von IUnknown.
RefCount kann künstlich inkrementiert werden, wenn ein neues Objekt erzeugt wird, das als Funktionsparameter übergeben werden soll. In solchen Fällen sollte RefCount nicht Null sein und deshalb vor dem Funktionsaufruf inkrementiert bzw. nach Rückkehr der Funktion dekrementiert werden.
Anmerkung: In Delphi-Coder inkrementiert die Methode CreateFromFactory künstlich und dekrementiert aus diesem Grund RefCount.
Anmerkung: Wenn Sie in C++ Code einen Klassengenerator als ersten Parameter an den Konstruktor übergeben, inkrementiert der Konstruktor künstlich und dekrementiert RefCount.