Imported Upstream version 3.6.0

Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
This commit is contained in:
Jo Shields
2014-08-13 10:39:27 +01:00
commit a575963da9
50588 changed files with 8155799 additions and 0 deletions

View File

@ -0,0 +1,240 @@
<Type Name="AtomicBoolean" FullName="Mono.Threading.AtomicBoolean">
<TypeSignature Language="C#" Value="public class AtomicBoolean" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit AtomicBoolean extends System.Object" />
<AssemblyInfo>
<AssemblyName>Mono.Parallel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Provide a volatile bool reference type and a set of Interlocked method to modify it.</summary>
<remarks>This type can be safely passed around.</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public AtomicBoolean ();" />
<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>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="CompareAndExchange">
<MemberSignature Language="C#" Value="public bool CompareAndExchange (bool expected, bool newVal);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool CompareAndExchange(bool expected, bool newVal) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="expected" Type="System.Boolean" />
<Parameter Name="newVal" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="expected">To be added.</param>
<param name="newVal">To be added.</param>
<summary>Same behavior than <see cref="M:System.Threading.Interlocked.CompareExchange(System.Int32@,System.Int32,System.Int32)" /></summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Equals">
<MemberSignature Language="C#" Value="public bool Equals (Mono.Threading.AtomicBoolean rhs);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Equals(class Mono.Threading.AtomicBoolean rhs) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rhs" Type="Mono.Threading.AtomicBoolean" />
</Parameters>
<Docs>
<param name="rhs">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Equals">
<MemberSignature Language="C#" Value="public override bool Equals (object rhs);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance bool Equals(object rhs) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rhs" Type="System.Object" />
</Parameters>
<Docs>
<param name="rhs">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Exchange">
<MemberSignature Language="C#" Value="public bool Exchange (bool newVal);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Exchange(bool newVal) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="newVal" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="newVal">To be added.</param>
<summary>Same behavior than <see cref="M:System.Threading.Interlocked.Exchange(System.Int32@,System.Int32)" /></summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="FromValue">
<MemberSignature Language="C#" Value="public static Mono.Threading.AtomicBoolean FromValue (bool value);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig class Mono.Threading.AtomicBoolean FromValue(bool value) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>Mono.Threading.AtomicBoolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="value" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="value">To be added.</param>
<summary>Provide a static facility method for creating new AtomicBoolean value initialized with specific boolean.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetHashCode">
<MemberSignature Language="C#" Value="public override int GetHashCode ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance int32 GetHashCode() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="op_Explicit">
<MemberSignature Language="C#" Value="public static bool op_Explicit (Mono.Threading.AtomicBoolean rhs);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname bool op_Explicit(class Mono.Threading.AtomicBoolean rhs) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rhs" Type="Mono.Threading.AtomicBoolean" />
</Parameters>
<Docs>
<param name="rhs">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="op_Implicit">
<MemberSignature Language="C#" Value="public static Mono.Threading.AtomicBoolean op_Implicit (bool rhs);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname class Mono.Threading.AtomicBoolean op_Implicit(bool rhs) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>Mono.Threading.AtomicBoolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rhs" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="rhs">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="TryRelaxedSet">
<MemberSignature Language="C#" Value="public bool TryRelaxedSet ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool TryRelaxedSet() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Try to atomically change the value from false to true.</summary>
<returns>To be added.</returns>
<remarks>This method is lighter than <see cref="M:Mono.Threading.AtomicBoolean.TrySet()" /> in the case the AtomicBoolean is already set to true because it first uses a normal read to check the value.</remarks>
</Docs>
</Member>
<Member MemberName="TrySet">
<MemberSignature Language="C#" Value="public bool TrySet ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool TrySet() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Try to atomically change the value from false to true.</summary>
<returns>To be added.</returns>
<remarks>This method is essentially a shortand for `!AtomicBoolean.Exchange (true)'</remarks>
</Docs>
</Member>
<Member MemberName="Value">
<MemberSignature Language="C#" Value="public bool Value { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool Value" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>The boolean value represented by this instance.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>

View File

@ -0,0 +1,227 @@
<Type Name="AtomicBooleanValue" FullName="Mono.Threading.AtomicBooleanValue">
<TypeSignature Language="C#" Value="public struct AtomicBooleanValue" />
<TypeSignature Language="ILAsm" Value=".class public sequential ansi sealed beforefieldinit AtomicBooleanValue extends System.ValueType" />
<AssemblyInfo>
<AssemblyName>Mono.Parallel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.ValueType</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Provide a volatile bool value type and a set of Interlocked method to modify it.</summary>
<remarks>This type is not safe to pass around.</remarks>
</Docs>
<Members>
<Member MemberName="CompareAndExchange">
<MemberSignature Language="C#" Value="public bool CompareAndExchange (bool expected, bool newVal);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool CompareAndExchange(bool expected, bool newVal) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="expected" Type="System.Boolean" />
<Parameter Name="newVal" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="expected">To be added.</param>
<param name="newVal">To be added.</param>
<summary>Same behavior than <see cref="M:System.Threading.Interlocked.CompareExchange(System.Int32@,System.Int32,System.Int32)" /></summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Equals">
<MemberSignature Language="C#" Value="public bool Equals (Mono.Threading.AtomicBooleanValue rhs);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Equals(valuetype Mono.Threading.AtomicBooleanValue rhs) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rhs" Type="Mono.Threading.AtomicBooleanValue" />
</Parameters>
<Docs>
<param name="rhs">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Equals">
<MemberSignature Language="C#" Value="public override bool Equals (object rhs);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance bool Equals(object rhs) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rhs" Type="System.Object" />
</Parameters>
<Docs>
<param name="rhs">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Exchange">
<MemberSignature Language="C#" Value="public bool Exchange (bool newVal);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Exchange(bool newVal) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="newVal" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="newVal">To be added.</param>
<summary>Same behavior than <see cref="M:System.Threading.Interlocked.Exchange(System.Int32@,System.Int32)" /></summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="FromValue">
<MemberSignature Language="C#" Value="public static Mono.Threading.AtomicBooleanValue FromValue (bool value);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype Mono.Threading.AtomicBooleanValue FromValue(bool value) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>Mono.Threading.AtomicBooleanValue</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="value" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="value">To be added.</param>
<summary>Provide a static facility method for creating new AtomicBoolean value initialized with specific boolean.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetHashCode">
<MemberSignature Language="C#" Value="public override int GetHashCode ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance int32 GetHashCode() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="op_Explicit">
<MemberSignature Language="C#" Value="public static bool op_Explicit (Mono.Threading.AtomicBooleanValue rhs);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname bool op_Explicit(valuetype Mono.Threading.AtomicBooleanValue rhs) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rhs" Type="Mono.Threading.AtomicBooleanValue" />
</Parameters>
<Docs>
<param name="rhs">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="op_Implicit">
<MemberSignature Language="C#" Value="public static Mono.Threading.AtomicBooleanValue op_Implicit (bool rhs);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname valuetype Mono.Threading.AtomicBooleanValue op_Implicit(bool rhs) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>Mono.Threading.AtomicBooleanValue</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rhs" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="rhs">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="TryRelaxedSet">
<MemberSignature Language="C#" Value="public bool TryRelaxedSet ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool TryRelaxedSet() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Try to atomically change the value from false to true.</summary>
<returns>To be added.</returns>
<remarks>This method is lighter than <see cref="M:Mono.Threading.AtomicBoolean.TrySet()" /> in the case the AtomicBoolean is already set to true because it first uses a normal read to check the value.</remarks>
</Docs>
</Member>
<Member MemberName="TrySet">
<MemberSignature Language="C#" Value="public bool TrySet ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool TrySet() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Try to atomically change the value from false to true.</summary>
<returns>To be added.</returns>
<remarks>This method is essentially a shortand for `!AtomicBoolean.Exchange (true)'</remarks>
</Docs>
</Member>
<Member MemberName="Value">
<MemberSignature Language="C#" Value="public bool Value { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool Value" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>The boolean value represented by this instance.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>

View File

@ -0,0 +1,118 @@
<Type Name="CSnzi" FullName="Mono.Threading.CSnzi">
<TypeSignature Language="C#" Value="public class CSnzi" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit CSnzi extends System.Object" />
<AssemblyInfo>
<AssemblyName>Mono.Parallel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Implementation of a closable scalable non-zero indicator. It has the same API than <see cref="T:System.Theading.Snzi" /> but also allow to temporarily disable state change.</summary>
<remarks />
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public CSnzi ();" />
<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>
<summary>Initialize Snzi object with a zero value.</summary>
<remarks />
</Docs>
</Member>
<Member MemberName="Arrive">
<MemberSignature Language="C#" Value="public Mono.Threading.CSnziNode Arrive ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance class Mono.Threading.CSnziNode Arrive() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>Mono.Threading.CSnziNode</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Increment the state of the CSnzi object.</summary>
<returns>Returns the internal node where the increment action occured. Returns null if CSnzi is closed.</returns>
<remarks>To undo an Arrive, you must call <see cref="M:Mono.Threading.CSnzi.Depart()" /> using the returned node object as an argument.</remarks>
</Docs>
</Member>
<Member MemberName="Close">
<MemberSignature Language="C#" Value="public bool Close ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Close() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Close the CSnzi object to subsequent Arrive or Depart action until <see cref="M:Mono.Threading.CSnzi.Open()" /> is called.</summary>
<returns>True if the state of the CSnzi was zero or if it was already closed, <see langword="false" /> otherwise.</returns>
<remarks />
</Docs>
</Member>
<Member MemberName="Depart">
<MemberSignature Language="C#" Value="public bool Depart (Mono.Threading.CSnziNode node);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Depart(class Mono.Threading.CSnziNode node) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="node" Type="Mono.Threading.CSnziNode" />
</Parameters>
<Docs>
<param name="node">The node to execute the decrement operation on.</param>
<summary>Decrement the state of the CSnzi object.</summary>
<returns>True if the CSnzi is open and its state is zero, <see langword="false" /> otherwise.</returns>
<remarks>Node argument must have been returned by a prior <see cref="M:Mono.Threading.CSnzi.Arrive()" /> call.</remarks>
</Docs>
</Member>
<Member MemberName="Open">
<MemberSignature Language="C#" Value="public void Open ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Open() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Query">
<MemberSignature Language="C#" Value="public Tuple&lt;bool,Mono.Threading.CSnziState&gt; Query ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance class System.Tuple`2&lt;bool, valuetype Mono.Threading.CSnziState&gt; Query() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Tuple&lt;System.Boolean,Mono.Threading.CSnziState&gt;</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns the current state of the CSnzi object.</summary>
<returns>A <see cref="T:System.Threading.QueryReturn" /> object with CSnzi current state informations.</returns>
<remarks />
</Docs>
</Member>
</Members>
</Type>

View File

@ -0,0 +1,31 @@
<Type Name="CSnziNode" FullName="Mono.Threading.CSnziNode">
<TypeSignature Language="C#" Value="public abstract class CSnziNode" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi abstract beforefieldinit CSnziNode extends System.Object" />
<AssemblyInfo>
<AssemblyName>Mono.Parallel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected CSnziNode ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>

View File

@ -0,0 +1,45 @@
<Type Name="CSnziState" FullName="Mono.Threading.CSnziState">
<TypeSignature Language="C#" Value="public enum CSnziState" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi sealed CSnziState extends System.Enum" />
<AssemblyInfo>
<AssemblyName>Mono.Parallel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Enum</BaseTypeName>
</Base>
<Docs>
<summary>Define the state of a CSnzi object.</summary>
<remarks />
</Docs>
<Members>
<Member MemberName="Closed">
<MemberSignature Language="C#" Value="Closed" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype Mono.Threading.CSnziState Closed = int32(1)" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>Mono.Threading.CSnziState</ReturnType>
</ReturnValue>
<Docs>
<summary>Object is closed and Arrive/Close won't work</summary>
</Docs>
</Member>
<Member MemberName="Open">
<MemberSignature Language="C#" Value="Open" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype Mono.Threading.CSnziState Open = int32(0)" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>Mono.Threading.CSnziState</ReturnType>
</ReturnValue>
<Docs>
<summary>Object is opened and Arrive/Close work as expected.</summary>
</Docs>
</Member>
</Members>
</Type>

View File

@ -0,0 +1,154 @@
<Type Name="ReaderWriterLockSlimmer" FullName="Mono.Threading.ReaderWriterLockSlimmer">
<TypeSignature Language="C#" Value="public struct ReaderWriterLockSlimmer" />
<TypeSignature Language="ILAsm" Value=".class public sequential ansi sealed beforefieldinit ReaderWriterLockSlimmer extends System.ValueType" />
<AssemblyInfo>
<AssemblyName>Mono.Parallel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.ValueType</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>This is an even lighter and faster version of <see cref="T:System.Threading.ReaderWriterLockSlim" /> that provide only the bare functionnality of a reader-writer lock with no thread tracking and no heavy wait mechanism. In summary, it's what <see cref="T:System.Threading.SpinLock" /> is to <see cref="T:System.Threading.Monitor" />.</summary>
<remarks>The Enter methods of this class use <see cref="T:System.Threading.SpinWait" /> for waiting which means you shouldn't use this type with locked long running operations.</remarks>
</Docs>
<Members>
<Member MemberName="EnterReadLock">
<MemberSignature Language="C#" Value="public void EnterReadLock (ref bool taken);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void EnterReadLock(bool taken) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="taken" Type="System.Boolean&amp;" RefType="ref" />
</Parameters>
<Docs>
<param name="taken">
<para>
Must be set to false prior calling this method.
</para>
<para>
If value is <see langword="true" /> lock has been taken. This value is safe to trust even under exceptional situations.
</para>
</param>
<summary>Attempts to get the lock in Read mode and loops if it's not yet available.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="EnterWriteLock">
<MemberSignature Language="C#" Value="public void EnterWriteLock (ref bool taken);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void EnterWriteLock(bool taken) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="taken" Type="System.Boolean&amp;" RefType="ref" />
</Parameters>
<Docs>
<param name="taken">
<para>
Must be set to false prior calling this method.
</para>
<para>
If value is <see langword="true" /> lock has been taken. This value is safe to trust even under exceptional situations.
</para>
</param>
<summary>Attempts to get the lock in Write mode and loops if it's not yet available.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="ExitReadLock">
<MemberSignature Language="C#" Value="public void ExitReadLock ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void ExitReadLock() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Remove a reader from the lock.</summary>
<remarks>A call to <see cref="M:Mono.Threading.ReaderWriterLockSlimmer.EnterReadLock()" /> or <see cref="M:Mono.Threading.ReaderWriterLockSlimmer.TryEnterReadLock()" /> must be matched by this method to release it no matter the thread that call it.</remarks>
</Docs>
</Member>
<Member MemberName="ExitWriteLock">
<MemberSignature Language="C#" Value="public void ExitWriteLock ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void ExitWriteLock() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Remove writer from the lock.</summary>
<remarks>A call to <see cref="M:Mono.Threading.ReaderWriterLockSlimmer.EnterWriteLock()" /> or <see cref="M:Mono.Threading.ReaderWriterLockSlimmer.TryEnterWriteLock()" /> must be matched by this method to release it no matter the thread that call it.</remarks>
</Docs>
</Member>
<Member MemberName="TryEnterReadLock">
<MemberSignature Language="C#" Value="public void TryEnterReadLock (ref bool taken);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void TryEnterReadLock(bool taken) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="taken" Type="System.Boolean&amp;" RefType="ref" />
</Parameters>
<Docs>
<param name="taken">
<para>
Must be set to false prior calling this method.
</para>
<para>
If value is <see langword="true" /> lock has been taken. This value is safe to trust even under exceptional situations.
</para>
</param>
<summary>Non-blocking equivalent of <see cref="m:Mono.Threading.EnterReadLock(System.Boolean@)" />.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="TryEnterWriteLock">
<MemberSignature Language="C#" Value="public void TryEnterWriteLock (ref bool taken);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void TryEnterWriteLock(bool taken) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="taken" Type="System.Boolean&amp;" RefType="ref" />
</Parameters>
<Docs>
<param name="taken">
<para>
Must be set to false prior calling this method.
</para>
<para>
If value is <see langword="true" /> lock has been taken. This value is safe to trust even under exceptional situations.
</para>
</param>
<summary>Non-blocking equivalent of <see cref="m:Mono.Threading.EnterWriteLock(System.Boolean@)" />.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>

View File

@ -0,0 +1,95 @@
<Type Name="Snzi" FullName="Mono.Threading.Snzi">
<TypeSignature Language="C#" Value="public class Snzi" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit Snzi extends System.Object" />
<AssemblyInfo>
<AssemblyName>Mono.Parallel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Implementation of a scalable non-zero indicator.</summary>
<remarks />
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public Snzi ();" />
<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>
<summary>Initialize Snzi object with a zero value.</summary>
<remarks />
</Docs>
</Member>
<Member MemberName="Decrement">
<MemberSignature Language="C#" Value="public void Decrement ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Decrement() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Decrement the value of the Snzi object.</summary>
<remarks>To undo the action, a call to <see cref="M:Mono.Threading.Snzi.Increment()" /> must be made on the same thread that initially called this method.</remarks>
</Docs>
</Member>
<Member MemberName="Increment">
<MemberSignature Language="C#" Value="public void Increment ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Increment() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Increment the value of the Snzi object.</summary>
<remarks>To undo the action, a call to <see cref="M:Mono.Threading.Snzi.Decrement()" /> must be made on the same thread that initially called this method.</remarks>
</Docs>
</Member>
<Member MemberName="IsSet">
<MemberSignature Language="C#" Value="public bool IsSet { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool IsSet" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Query if Snzi is has a zero value or not.</summary>
<value>True if Snzi is zero, <see langword="false" /> otherwise.</value>
<remarks />
</Docs>
</Member>
<Member MemberName="Reset">
<MemberSignature Language="C#" Value="public void Reset ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Reset() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Reset the Snzi object to a zero state.</summary>
<remarks />
</Docs>
</Member>
</Members>
</Type>

View File

@ -0,0 +1,63 @@
<Type Name="SpinLockWrapper" FullName="Mono.Threading.SpinLockWrapper">
<TypeSignature Language="C#" Value="public class SpinLockWrapper" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit SpinLockWrapper extends System.Object" />
<AssemblyInfo>
<AssemblyName>Mono.Parallel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Provide a simplistic class wrapper around <see cref="T:System.Threading.SpinLock" /> to be able to pass around the lock.</summary>
<remarks />
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public SpinLockWrapper ();" />
<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>
<summary>Initialize underlying <see cref="T:System.Threading.SpinLock" /> instance with thread tracking disabled.</summary>
<remarks />
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public SpinLockWrapper (bool enableTracking);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(bool enableTracking) cil managed" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="enableTracking" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="enableTracking">
<see langword="true" /> to enable thread tracking, <see langword="false" /> otherwise.</param>
<summary>Initialize underlying <see cref="T:System.Threading.SpinLock" /> with provided value.</summary>
<remarks />
</Docs>
</Member>
<Member MemberName="Lock">
<MemberSignature Language="C#" Value="public System.Threading.SpinLock Lock;" />
<MemberSignature Language="ILAsm" Value=".field public valuetype System.Threading.SpinLock Lock" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Threading.SpinLock</ReturnType>
</ReturnValue>
<Docs>
<summary>Instance of <see cref="T:System.Threading.SpinLock" /> to use.</summary>
<remarks />
</Docs>
</Member>
</Members>
</Type>