﻿<?xml version="1.0" encoding="utf-8"?><Type Name="WeakReference" FullName="System.WeakReference"><TypeSignature Maintainer="auto" Language="C#" Value="public class WeakReference : System.Runtime.Serialization.ISerializable" /><TypeSignature Language="ILAsm" Value=".class public auto ansi serializable beforefieldinit WeakReference extends System.Object implements class System.Runtime.Serialization.ISerializable" /><AssemblyInfo><AssemblyName>mscorlib</AssemblyName><AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement><Base><BaseTypeName>System.Object</BaseTypeName></Base><Interfaces><Interface><InterfaceName>System.Runtime.Serialization.ISerializable</InterfaceName></Interface></Interfaces><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>A weak reference allows the garbage collector to collect an object while still allowing an application to access the object. If you need the object, you can still obtain a strong reference to it and prevent it from being collected. For more information about how to use short and long weak references, see <format type="text/html"><a href="6a600fe5-3af3-4c64-82da-10a0a8e2d79b">Using Weak References</a></format>.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Represents a weak reference, which references an object while still allowing that object to be reclaimed by garbage collection.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public WeakReference (object target);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(object target) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="target" Type="System.Object" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This constructor creates a short weak reference to <paramref name="target" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.WeakReference" /> class, referencing the specified object.</para></summary><param name="target"><attribution license="cc4" from="Microsoft" modified="false" />The object to track or null. </param></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public WeakReference (object target, bool trackResurrection);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(object target, bool trackResurrection) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="target" Type="System.Object" /><Parameter Name="trackResurrection" Type="System.Boolean" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If <paramref name="trackResurrection" /> is false, a short weak reference is created. If <paramref name="trackResurrection" /> is true, a long weak reference is created.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.WeakReference" /> class, referencing the specified object and using the specified resurrection tracking.</para></summary><param name="target"><attribution license="cc4" from="Microsoft" modified="false" />An object to track. </param><param name="trackResurrection"><attribution license="cc4" from="Microsoft" modified="false" />Indicates when to stop tracking the object. If true, the object is tracked after finalization; if false, the object is only tracked until finalization. </param></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="protected WeakReference (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor(class System.Runtime.Serialization.SerializationInfo info, valuetype System.Runtime.Serialization.StreamingContext context) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="info" Type="System.Runtime.Serialization.SerializationInfo" /><Parameter Name="context" Type="System.Runtime.Serialization.StreamingContext" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <paramref name="context" /> parameter is reserved, and does not currently participate in this operation.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.WeakReference" /> class, using deserialized data from the specified serialization and stream objects.</para></summary><param name="info"><attribution license="cc4" from="Microsoft" modified="false" />An object that holds all the data needed to serialize or deserialize the current <see cref="T:System.WeakReference" /> object. </param><param name="context"><attribution license="cc4" from="Microsoft" modified="false" />(Reserved) Describes the source and destination of the serialized stream specified by <paramref name="info" />. </param></Docs></Member><Member MemberName="Finalize"><MemberSignature Language="C#" Value="~WeakReference ();" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void Finalize() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Discards the reference to the target represented by the current <see cref="T:System.WeakReference" /> object.</para></summary></Docs></Member><Member MemberName="GetObjectData"><MemberSignature Language="C#" Value="public virtual void GetObjectData (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void GetObjectData(class System.Runtime.Serialization.SerializationInfo info, valuetype System.Runtime.Serialization.StreamingContext context) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="info" Type="System.Runtime.Serialization.SerializationInfo" /><Parameter Name="context" Type="System.Runtime.Serialization.StreamingContext" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This method stores all the information in <paramref name="info" /> necessary to serialize the current <see cref="T:System.WeakReference" /> object.</para><para>The <paramref name="context" /> parameter is reserved and is not currently used in the execution of this method.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object with all the data needed to serialize the current <see cref="T:System.WeakReference" /> object.</para></summary><param name="info"><attribution license="cc4" from="Microsoft" modified="false" />An object that holds all the data needed to serialize or deserialize the current <see cref="T:System.WeakReference" /> object. </param><param name="context"><attribution license="cc4" from="Microsoft" modified="false" />(Reserved) The location where serialized data is stored and retrieved. </param></Docs></Member><Member MemberName="IsAlive"><MemberSignature Language="C#" Value="public virtual bool IsAlive { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool IsAlive" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><value>True if the target has been garbage collected.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Because an object could potentially be reclaimed for garbage collection immediately after the <see cref="P:System.WeakReference.IsAlive" /> property returns true, using this property is not recommended unless you are testing only for a false return value.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets an indication whether the object referenced by the current <see cref="T:System.WeakReference" /> object has been garbage collected.</para></summary></Docs></Member><Member MemberName="Target"><MemberSignature Language="C#" Value="public virtual object Target { get; set; }" /><MemberSignature Language="ILAsm" Value=".property instance object Target" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Object</ReturnType></ReturnValue><Parameters></Parameters><Docs><value>The target object.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>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.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets or sets the object (the target) referenced by the current <see cref="T:System.WeakReference" /> object.</para></summary></Docs></Member><Member MemberName="TrackResurrection"><MemberSignature Language="C#" Value="public virtual bool TrackResurrection { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool TrackResurrection" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><value>True if the WeakReference is tracking the target object's ressurection.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If true, the weak reference is a long weak reference and true was specified for the <paramref name="trackResurrection" /> parameter in the <see cref="T:System.WeakReference" /> constructor.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets an indication whether the object referenced by the current <see cref="T:System.WeakReference" /> object is tracked after it is finalized.</para></summary></Docs></Member></Members></Type>