305 lines
12 KiB
C#
305 lines
12 KiB
C#
using System;
|
|
using System.Diagnostics;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace System.Threading
|
|
{
|
|
/// <summary>Provides a slimmed down version of <see cref="T:System.Threading.ManualResetEvent" />.</summary>
|
|
// Token: 0x02000325 RID: 805
|
|
[Token(Token = "0x2000325")]
|
|
[ComVisible(false)]
|
|
[DebuggerDisplay("Set = {IsSet}")]
|
|
public class ManualResetEventSlim : IDisposable
|
|
{
|
|
/// <summary>Gets the underlying <see cref="T:System.Threading.WaitHandle" /> object for this <see cref="T:System.Threading.ManualResetEventSlim" />.</summary>
|
|
/// <returns>The underlying <see cref="T:System.Threading.WaitHandle" /> event object fore this <see cref="T:System.Threading.ManualResetEventSlim" />.</returns>
|
|
// Token: 0x17000459 RID: 1113
|
|
// (get) Token: 0x06001EC4 RID: 7876 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x17000459")]
|
|
public WaitHandle WaitHandle
|
|
{
|
|
[Token(Token = "0x6001EC4")]
|
|
[Address(RVA = "0xF2E6F0", Offset = "0xF2D6F0", VA = "0x180F2E6F0")]
|
|
get
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets whether the event is set.</summary>
|
|
/// <returns>true if the event has is set; otherwise, false.</returns>
|
|
// Token: 0x1700045A RID: 1114
|
|
// (get) Token: 0x06001EC5 RID: 7877 RVA: 0x00014EB0 File Offset: 0x000130B0
|
|
// (set) Token: 0x06001EC6 RID: 7878 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x1700045A")]
|
|
public bool IsSet
|
|
{
|
|
[Token(Token = "0x6001EC5")]
|
|
[Address(RVA = "0xF2E630", Offset = "0xF2D630", VA = "0x180F2E630")]
|
|
get
|
|
{
|
|
return default(bool);
|
|
}
|
|
[Token(Token = "0x6001EC6")]
|
|
[Address(RVA = "0xF2E7A0", Offset = "0xF2D7A0", VA = "0x180F2E7A0")]
|
|
private set
|
|
{
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets the number of spin waits that will occur before falling back to a kernel-based wait operation.</summary>
|
|
/// <returns>Returns the number of spin waits that will occur before falling back to a kernel-based wait operation.</returns>
|
|
// Token: 0x1700045B RID: 1115
|
|
// (get) Token: 0x06001EC7 RID: 7879 RVA: 0x00014EC8 File Offset: 0x000130C8
|
|
// (set) Token: 0x06001EC8 RID: 7880 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x1700045B")]
|
|
public int SpinCount
|
|
{
|
|
[Token(Token = "0x6001EC7")]
|
|
[Address(RVA = "0xF2E690", Offset = "0xF2D690", VA = "0x180F2E690")]
|
|
get
|
|
{
|
|
return 0;
|
|
}
|
|
[Token(Token = "0x6001EC8")]
|
|
[Address(RVA = "0xF2E7D0", Offset = "0xF2D7D0", VA = "0x180F2E7D0")]
|
|
private set
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x1700045C RID: 1116
|
|
// (get) Token: 0x06001EC9 RID: 7881 RVA: 0x00014EE0 File Offset: 0x000130E0
|
|
// (set) Token: 0x06001ECA RID: 7882 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x1700045C")]
|
|
private int Waiters
|
|
{
|
|
[Token(Token = "0x6001EC9")]
|
|
[Address(RVA = "0xF2E740", Offset = "0xF2D740", VA = "0x180F2E740")]
|
|
get
|
|
{
|
|
return 0;
|
|
}
|
|
[Token(Token = "0x6001ECA")]
|
|
[Address(RVA = "0xF2E810", Offset = "0xF2D810", VA = "0x180F2E810")]
|
|
set
|
|
{
|
|
}
|
|
}
|
|
|
|
/// <summary>Initializes a new instance of the <see cref="T:System.Threading.ManualResetEventSlim" /> class with a Boolean value indicating whether to set the intial state to signaled.</summary>
|
|
/// <param name="initialState">true to set the initial state signaled; false to set the initial state to nonsignaled.</param>
|
|
// Token: 0x06001ECB RID: 7883 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ECB")]
|
|
[Address(RVA = "0xF2E4A0", Offset = "0xF2D4A0", VA = "0x180F2E4A0")]
|
|
public ManualResetEventSlim(bool initialState)
|
|
{
|
|
}
|
|
|
|
/// <summary>Initializes a new instance of the <see cref="T:System.Threading.ManualResetEventSlim" /> class with a Boolean value indicating whether to set the intial state to signaled and a specified spin count.</summary>
|
|
/// <param name="initialState">true to set the initial state to signaled; false to set the initial state to nonsignaled.</param>
|
|
/// <param name="spinCount">The number of spin waits that will occur before falling back to a kernel-based wait operation.</param>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="spinCount" /> is less than 0 or greater than the maximum allowed value.</exception>
|
|
// Token: 0x06001ECC RID: 7884 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ECC")]
|
|
[Address(RVA = "0xF2E520", Offset = "0xF2D520", VA = "0x180F2E520")]
|
|
public ManualResetEventSlim(bool initialState, int spinCount)
|
|
{
|
|
}
|
|
|
|
// Token: 0x06001ECD RID: 7885 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ECD")]
|
|
[Address(RVA = "0xF2D700", Offset = "0xF2C700", VA = "0x180F2D700")]
|
|
private void Initialize(bool initialState, int spinCount)
|
|
{
|
|
}
|
|
|
|
// Token: 0x06001ECE RID: 7886 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ECE")]
|
|
[Address(RVA = "0xF2D680", Offset = "0xF2C680", VA = "0x180F2D680")]
|
|
private void EnsureLockObjectCreated()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06001ECF RID: 7887 RVA: 0x00014EF8 File Offset: 0x000130F8
|
|
[Token(Token = "0x6001ECF")]
|
|
[Address(RVA = "0xF2D780", Offset = "0xF2C780", VA = "0x180F2D780")]
|
|
private bool LazyInitializeEvent()
|
|
{
|
|
return default(bool);
|
|
}
|
|
|
|
/// <summary>Sets the state of the event to signaled, which allows one or more threads waiting on the event to proceed.</summary>
|
|
// Token: 0x06001ED0 RID: 7888 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ED0")]
|
|
[Address(RVA = "0xF2DA60", Offset = "0xF2CA60", VA = "0x180F2DA60")]
|
|
public void Set()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06001ED1 RID: 7889 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ED1")]
|
|
[Address(RVA = "0xF2DA70", Offset = "0xF2CA70", VA = "0x180F2DA70")]
|
|
private void Set(bool duringCancellation)
|
|
{
|
|
}
|
|
|
|
/// <summary>Sets the state of the event to nonsignaled, which causes threads to block.</summary>
|
|
/// <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
|
|
// Token: 0x06001ED2 RID: 7890 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ED2")]
|
|
[Address(RVA = "0xF2D9B0", Offset = "0xF2C9B0", VA = "0x180F2D9B0")]
|
|
public void Reset()
|
|
{
|
|
}
|
|
|
|
/// <summary>Blocks the current thread until the current <see cref="T:System.Threading.ManualResetEventSlim" /> is set.</summary>
|
|
/// <exception cref="T:System.InvalidOperationException">The maximum number of waiters has been exceeded.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
|
|
// Token: 0x06001ED3 RID: 7891 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ED3")]
|
|
[Address(RVA = "0xF2E430", Offset = "0xF2D430", VA = "0x180F2E430")]
|
|
public void Wait()
|
|
{
|
|
}
|
|
|
|
/// <summary>Blocks the current thread until the current <see cref="T:System.Threading.ManualResetEventSlim" /> is set, using a 32-bit signed integer to measure the time interval, while observing a <see cref="T:System.Threading.CancellationToken" />.</summary>
|
|
/// <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite" />(-1) to wait indefinitely.</param>
|
|
/// <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken" /> to observe.</param>
|
|
/// <returns>
|
|
/// <see langword="true" /> if the <see cref="T:System.Threading.ManualResetEventSlim" /> was set; otherwise, <see langword="false" />.</returns>
|
|
/// <exception cref="T:System.OperationCanceledException">
|
|
/// <paramref name="cancellationToken" /> was canceled.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="millisecondsTimeout" /> is a negative number other than -1, which represents an infinite time-out.</exception>
|
|
/// <exception cref="T:System.InvalidOperationException">The maximum number of waiters has been exceeded.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">The object has already been disposed or the <see cref="T:System.Threading.CancellationTokenSource" /> that created <paramref name="cancellationToken" /> has been disposed.</exception>
|
|
// Token: 0x06001ED4 RID: 7892 RVA: 0x00014F10 File Offset: 0x00013110
|
|
[Token(Token = "0x6001ED4")]
|
|
[Address(RVA = "0xF2DE40", Offset = "0xF2CE40", VA = "0x180F2DE40")]
|
|
public bool Wait(int millisecondsTimeout, CancellationToken cancellationToken)
|
|
{
|
|
return default(bool);
|
|
}
|
|
|
|
/// <summary>Releases all resources used by the current instance of the <see cref="T:System.Threading.ManualResetEventSlim" /> class.</summary>
|
|
// Token: 0x06001ED5 RID: 7893 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ED5")]
|
|
[Address(RVA = "0xF2D610", Offset = "0xF2C610", VA = "0x180F2D610", Slot = "4")]
|
|
public void Dispose()
|
|
{
|
|
}
|
|
|
|
/// <summary>Releases the unmanaged resources used by the <see cref="T:System.Threading.ManualResetEventSlim" />, and optionally releases the managed resources.</summary>
|
|
/// <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
|
|
// Token: 0x06001ED6 RID: 7894 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ED6")]
|
|
[Address(RVA = "0xF2D500", Offset = "0xF2C500", VA = "0x180F2D500", Slot = "5")]
|
|
protected virtual void Dispose(bool disposing)
|
|
{
|
|
}
|
|
|
|
// Token: 0x06001ED7 RID: 7895 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ED7")]
|
|
[Address(RVA = "0xF2DD20", Offset = "0xF2CD20", VA = "0x180F2DD20")]
|
|
private void ThrowIfDisposed()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06001ED8 RID: 7896 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ED8")]
|
|
[Address(RVA = "0xF2D390", Offset = "0xF2C390", VA = "0x180F2D390")]
|
|
private static void CancellationTokenCallback(object obj)
|
|
{
|
|
}
|
|
|
|
// Token: 0x06001ED9 RID: 7897 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x6001ED9")]
|
|
[Address(RVA = "0xF2DDA0", Offset = "0xF2CDA0", VA = "0x180F2DDA0")]
|
|
private void UpdateStateAtomically(int newBits, int updateBitsMask)
|
|
{
|
|
}
|
|
|
|
// Token: 0x06001EDA RID: 7898 RVA: 0x00014F28 File Offset: 0x00013128
|
|
[Token(Token = "0x6001EDA")]
|
|
[Address(RVA = "0xF2D6F0", Offset = "0xF2C6F0", VA = "0x180F2D6F0")]
|
|
private static int ExtractStatePortionAndShiftRight(int state, int mask, int rightBitShiftCount)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x06001EDB RID: 7899 RVA: 0x00014F40 File Offset: 0x00013140
|
|
[Token(Token = "0x6001EDB")]
|
|
[Address(RVA = "0x8BCC80", Offset = "0x8BBC80", VA = "0x1808BCC80")]
|
|
private static int ExtractStatePortion(int state, int mask)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x04001135 RID: 4405
|
|
[Token(Token = "0x4001135")]
|
|
private const int DEFAULT_SPIN_SP = 1;
|
|
|
|
// Token: 0x04001136 RID: 4406
|
|
[Token(Token = "0x4001136")]
|
|
private const int DEFAULT_SPIN_MP = 10;
|
|
|
|
// Token: 0x04001137 RID: 4407
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4001137")]
|
|
private object m_lock;
|
|
|
|
// Token: 0x04001138 RID: 4408
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4001138")]
|
|
private ManualResetEvent m_eventObj;
|
|
|
|
// Token: 0x04001139 RID: 4409
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4001139")]
|
|
private int m_combinedState;
|
|
|
|
// Token: 0x0400113A RID: 4410
|
|
[Token(Token = "0x400113A")]
|
|
private const int SignalledState_BitMask = -2147483648;
|
|
|
|
// Token: 0x0400113B RID: 4411
|
|
[Token(Token = "0x400113B")]
|
|
private const int SignalledState_ShiftCount = 31;
|
|
|
|
// Token: 0x0400113C RID: 4412
|
|
[Token(Token = "0x400113C")]
|
|
private const int Dispose_BitMask = 1073741824;
|
|
|
|
// Token: 0x0400113D RID: 4413
|
|
[Token(Token = "0x400113D")]
|
|
private const int SpinCountState_BitMask = 1073217536;
|
|
|
|
// Token: 0x0400113E RID: 4414
|
|
[Token(Token = "0x400113E")]
|
|
private const int SpinCountState_ShiftCount = 19;
|
|
|
|
// Token: 0x0400113F RID: 4415
|
|
[Token(Token = "0x400113F")]
|
|
private const int SpinCountState_MaxValue = 2047;
|
|
|
|
// Token: 0x04001140 RID: 4416
|
|
[Token(Token = "0x4001140")]
|
|
private const int NumWaitersState_BitMask = 524287;
|
|
|
|
// Token: 0x04001141 RID: 4417
|
|
[Token(Token = "0x4001141")]
|
|
private const int NumWaitersState_ShiftCount = 0;
|
|
|
|
// Token: 0x04001142 RID: 4418
|
|
[Token(Token = "0x4001142")]
|
|
private const int NumWaitersState_MaxValue = 524287;
|
|
|
|
// Token: 0x04001143 RID: 4419
|
|
[Token(Token = "0x4001143")]
|
|
private static Action<object> s_cancellationTokenCallback;
|
|
}
|
|
}
|