WeakReference.Target WeakReference.Target WeakReference.Target WeakReference.Target Property

Definition

Ruft das Objekt (das Ziel) ab, auf das das aktuelle WeakReference-Objekt verweist, oder legt dieses fest.Gets or sets the object (the target) referenced by the current WeakReference object.

public:
 virtual property System::Object ^ Target { System::Object ^ get(); void set(System::Object ^ value); };
public virtual object Target { get; set; }
member this.Target : obj with get, set
Public Overridable Property Target As Object

Eigenschaftswert

null, wenn das Objekt, auf das das aktuelle WeakReference-Objekt verweist, an den Garbage Collector übergeben wurde, andernfalls ein Verweis auf das Objekt, auf das das aktuelle WeakReference-Objekt verweist.null if the object referenced by the current WeakReference object has been garbage collected; otherwise, a reference to the object referenced by the current WeakReference object.

Ausnahmen

Der Verweis auf das Zielobjekt ist ungültig.The reference to the target object is invalid. Diese Ausnahme kann beim Festlegen dieser Eigenschaft ausgelöst werden, wenn der Wert ein NULL-Verweis ist oder wenn das Objekt beim set-Vorgang finalisiert wurde.This exception can be thrown while setting this property if the value is a null reference or if the object has been finalized during the set operation.

Beispiele

Im folgenden Beispiel wird versucht, die ein Objekt aus einem Cache von Objekten mit schwacher Verweise zu erhalten.The following example tries to obtain an object from a cache of objects with weak references. Wenn das Objekt für die Garbagecollection freigegeben wurde, wird ein neues Objekt generiert.If the object was reclaimed for garbage collection, a new object is generated. In diesem Beispiel ist Teil eines umfangreicheren Beispiels für die WeakReference Klasse.This example is part of a larger example provided for the WeakReference class.

Data d = _cache[index].Target as Data;
if (d == null) {
    // If the object was reclaimed, generate a new one.
    Console.WriteLine("Regenerate object at {0}: Yes", index);
    d = new Data(index);
    _cache[index].Target = d;
    regenCount++;
}
else {
    // Object was obtained with the weak reference.
    Console.WriteLine("Regenerate object at {0}: No", index);
}

return d;
 Dim d As Data = TryCast(_cache(index).Target, Data)
 ' If the object was reclaimed, generate a new one.
 If d Is Nothing Then 
     Console.WriteLine("Regenerate object at {0}: Yes", index)
     d = New Data(index)
     _cache(index).Target = d
     regenCount += 1
Else 
     ' Object was obtained with the weak reference.
     Console.WriteLine("Regenerate object at {0}: No", index.ToString())
 End If 
 Return d

Hinweise

Nach dem Festlegen dieser Eigenschaft auf das Zielobjekt, sicher, dass keine anderen starken Verweise auf das Objekt vorhanden sind; Andernfalls wird es nicht erfasst werden.After setting this property to the target object, make sure that there are no other strong references to the object; otherwise, it will not be collected.

Gilt für:

Siehe auch