</Docs>
<Members>
<Member MemberName="EnterReadLock">
- <MemberSignature Language="C#" Value="public void EnterReadLock ();" />
- <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void EnterReadLock() cil managed" />
+ <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>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
- <Parameters />
+ <Parameters>
+ <Parameter Name="taken" Type="System.Boolean&" 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 />
+ <remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="EnterWriteLock">
- <MemberSignature Language="C#" Value="public void EnterWriteLock ();" />
- <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void EnterWriteLock() cil managed" />
+ <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>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
- <Parameters />
+ <Parameters>
+ <Parameter Name="taken" Type="System.Boolean&" 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>
<Parameters />
<Docs>
<summary>Remove a reader from the lock.</summary>
- <remarks>A call to <see cref="M:Mono.Threading.ReaderWriterLockSlimmer.EnterReadLock()" /> must be matched by this method to release it no matter the thread that call it.</remarks>
+ <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">
<Parameters />
<Docs>
<summary>Remove writer from the lock.</summary>
- <remarks>A call to <see cref="M:Mono.Threading.ReaderWriterLockSlimmer.EnterWriteLock()" /> must be matched by this method to release it no matter the thread that call it.</remarks>
+ <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&" 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&" 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>