﻿<?xml version="1.0" encoding="utf-8"?><Type Name="ThreadLocal&lt;T&gt;" FullName="System.Threading.ThreadLocal&lt;T&gt;"><TypeSignature Language="C#" Value="public class ThreadLocal&lt;T&gt; : IDisposable" /><TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit ThreadLocal`1&lt;T&gt; extends System.Object implements class System.IDisposable" /><AssemblyInfo><AssemblyName>mscorlib</AssemblyName><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><TypeParameters><TypeParameter Name="T" /></TypeParameters><Base><BaseTypeName>System.Object</BaseTypeName></Base><Interfaces><Interface><InterfaceName>System.IDisposable</InterfaceName></Interface></Interfaces><Attributes><Attribute><AttributeName>System.Diagnostics.DebuggerDisplay("IsValueCreated={IsValueCreated}, Value={ValueForDebugDisplay}")</AttributeName></Attribute></Attributes><Docs><typeparam name="T">To be added.</typeparam><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Provides thread-local storage of data.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ThreadLocal ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The default value is used to initialize the instance when <see cref="P:System.Threading.ThreadLocal`1.Value" /> is accessed for the first time</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes the <see cref="T:System.Threading.ThreadLocal`1" /> instance.</para></summary></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ThreadLocal (bool trackAllValues);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(bool trackAllValues) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Parameters><Parameter Name="trackAllValues" Type="System.Boolean" /></Parameters><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes the <see cref="T:System.Threading.ThreadLocal`1" /> instance.</para></summary><param name="trackAllValues"><attribution license="cc4" from="Microsoft" modified="false" />Whether to track all values set on the instance and expose them through the <see cref="P:System.Threading.ThreadLocal`1.Values" /> property.</param></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ThreadLocal (Func&lt;T&gt; valueFactory);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Func`1&lt;!T&gt; valueFactory) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Parameters><Parameter Name="valueFactory" Type="System.Func&lt;T&gt;" /></Parameters><Docs><param name="valueFactory">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ThreadLocal (Func&lt;T&gt; valueFactory, bool trackAllValues);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Func`1&lt;!T&gt; valueFactory, bool trackAllValues) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Parameters><Parameter Name="valueFactory" Type="System.Func&lt;T&gt;" /><Parameter Name="trackAllValues" Type="System.Boolean" /></Parameters><Docs><param name="valueFactory">To be added.</param><param name="trackAllValues">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="Dispose"><MemberSignature Language="C#" Value="public void Dispose ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void Dispose() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Call Dispose when you are finished using the <see cref="T:System.Threading.ThreadLocal`1" />. The Dispose method leaves the <see cref="T:System.Threading.ThreadLocal`1" /> in an unusable state. After calling Dispose, you must release all references to the <see cref="T:System.Threading.ThreadLocal`1" /> so the garbage collector can reclaim the memory that the <see cref="T:System.Threading.ThreadLocal`1" /> was occupying.</para><para>For more information, see <format type="text/html"><a href="A17B0066-71C2-4BA4-9822-8E19332FC213">Cleaning Up Unmanaged Resources</a></format> and <format type="text/html"><a href="eb4e1af0-3b48-4fbc-ad4e-fc2f64138bf9">Implementing a Dispose Method</a></format>.</para><block subset="none" type="note"><para>Always call Dispose before you release your last reference to the <see cref="T:System.Threading.ThreadLocal`1" />. Otherwise, the resources it is using will not be freed until the garbage collector calls the <see cref="T:System.Threading.ThreadLocal`1" /> object's Finalize method.</para></block></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Releases all resources used by the current instance of the <see cref="T:System.Threading.ThreadLocal`1" /> class.</para></summary></Docs></Member><Member MemberName="Dispose"><MemberSignature Language="C#" Value="protected virtual void Dispose (bool disposing);" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void Dispose(bool disposing) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="disposing" Type="System.Boolean" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Unlike most of the members of <see cref="T:System.Threading.ThreadLocal`1" />, this method is not thread-safe.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Releases the resources used by this <see cref="T:System.Threading.ThreadLocal`1" /> instance.</para></summary><param name="disposing"><attribution license="cc4" from="Microsoft" modified="false" />A Boolean value that indicates whether this method is being called due to a call to <see cref="M:System.Threading.ThreadLocal`1.Dispose" />.</param></Docs></Member><Member MemberName="Finalize"><MemberSignature Language="C#" Value="~ThreadLocal`1 ();" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void Finalize() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><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>Releases the resources used by this <see cref="T:System.Threading.ThreadLocal`1" /> instance.</para></summary></Docs></Member><Member MemberName="IsValueCreated"><MemberSignature Language="C#" Value="public bool IsValueCreated { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool IsValueCreated" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets whether <see cref="P:System.Threading.ThreadLocal`1.Value" /> is initialized on the current thread.</para></summary></Docs></Member><Member MemberName="ToString"><MemberSignature Language="C#" Value="public override string ToString ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance string ToString() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.String</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Calling this method forces initialization for the current thread, as is the case with accessing <see cref="P:System.Threading.ThreadLocal`1.Value" /> directly.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Creates and returns a string representation of this instance for the current thread.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The result of calling <see cref="M:System.Object.ToString" /> on the <see cref="P:System.Threading.ThreadLocal`1.Value" />.</para></returns></Docs></Member><Member MemberName="Value"><MemberSignature Language="C#" Value="public T Value { get; set; }" /><MemberSignature Language="ILAsm" Value=".property instance !T Value" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Attributes><Attribute><AttributeName>System.Diagnostics.DebuggerBrowsable(System.Diagnostics.DebuggerBrowsableState.Never)</AttributeName></Attribute></Attributes><ReturnValue><ReturnType>T</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If this instance was not previously initialized for the current thread, accessing <see cref="P:System.Threading.ThreadLocal`1.Value" /> will attempt to initialize it. If an initialization function was supplied during the construction, that initialization will happen by invoking the function to retrieve the initial value for <see cref="P:System.Threading.ThreadLocal`1.Value" />. Otherwise, the default value of will be used. If an exception is thrown, that exception is cached and thrown on each subsequent access of the property.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets or sets the value of this instance for the current thread.</para></summary></Docs></Member><Member MemberName="Values"><MemberSignature Language="C#" Value="public System.Collections.Generic.IList&lt;T&gt; Values { get; }" /><MemberSignature Language="ILAsm" Value=".property instance class System.Collections.Generic.IList`1&lt;!T&gt; Values" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Collections.Generic.IList&lt;T&gt;</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets a list for all of the values currently stored by all of the threads that have accessed this instance.</para></summary></Docs></Member></Members></Type>