terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches
ManualResetEventSlim.cs
Go to the documentation of this file.
1using System;
4
5namespace System.Threading
6{
7 // Token: 0x020001CB RID: 459
8 [DebuggerDisplay("Set = {IsSet}")]
10 {
11 // Token: 0x1700018A RID: 394
12 // (get) Token: 0x060010E1 RID: 4321 RVA: 0x00023B04 File Offset: 0x00021D04
14 {
15 get
16 {
17 /*
18An exception occurred when decompiling this method (060010E1)
19
20ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Threading.WaitHandle System.Threading.ManualResetEventSlim::get_WaitHandle()
21
22 ---> System.Exception: Basic block has to end with unconditional control flow.
23{
24 IL_0015:
25 stloc:ManualResetEvent(var_1_1B, ldfld:ManualResetEvent(ManualResetEventSlim::m_eventObj, ldloc:ManualResetEventSlim(this)))
26}
27
28 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
29 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
30 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
31 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
32 --- End of inner exception stack trace ---
33 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
34 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
35*/;
36 }
37 }
38
39 // Token: 0x1700018B RID: 395
40 // (get) Token: 0x060010E2 RID: 4322 RVA: 0x00023B2C File Offset: 0x00021D2C
41 // (set) Token: 0x060010E3 RID: 4323 RVA: 0x00023B44 File Offset: 0x00021D44
42 public bool IsSet
43 {
44 get
45 {
46 /*
47An exception occurred when decompiling this method (060010E2)
48
49ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Threading.ManualResetEventSlim::get_IsSet()
50
51 ---> System.Exception: Basic block has to end with unconditional control flow.
52{
53 IL_0000:
54 stloc:int32(var_0_06, ldfld:int32(ManualResetEventSlim::m_combinedState, ldloc:ManualResetEventSlim(this)))
55 brtrue(IL_0000, ldc.i4:bool(1))
56}
57
58 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
59 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
60 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
61 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
62 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
63 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
64 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
65 --- End of inner exception stack trace ---
66 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
67 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
68*/;
69 }
70 private set
71 {
72 this.UpdateStateAtomically(value ? 1 : 0, 32768);
73 }
74 }
75
76 // Token: 0x1700018C RID: 396
77 // (get) Token: 0x060010E4 RID: 4324 RVA: 0x00023B60 File Offset: 0x00021D60
78 // (set) Token: 0x060010E5 RID: 4325 RVA: 0x00023B78 File Offset: 0x00021D78
79 public int SpinCount
80 {
81 get
82 {
83 /*
84An exception occurred when decompiling this method (060010E4)
85
86ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Threading.ManualResetEventSlim::get_SpinCount()
87
88 ---> System.Exception: Basic block has to end with unconditional control flow.
89{
90 IL_0000:
91 stloc:int32(var_0_06, ldfld:int32(ManualResetEventSlim::m_combinedState, ldloc:ManualResetEventSlim(this)))
92 brtrue(IL_0000, ldc.i4:bool(1))
93}
94
95 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
96 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
97 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
98 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
99 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
100 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
101 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
102 --- End of inner exception stack trace ---
103 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
104 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
105*/;
106 }
107 private set
108 {
110 }
111 }
112
113 // Token: 0x1700018D RID: 397
114 // (get) Token: 0x060010E6 RID: 4326 RVA: 0x00023B8C File Offset: 0x00021D8C
115 // (set) Token: 0x060010E7 RID: 4327 RVA: 0x00023BA4 File Offset: 0x00021DA4
116 private int Waiters
117 {
118 get
119 {
120 /*
121An exception occurred when decompiling this method (060010E6)
122
123ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Threading.ManualResetEventSlim::get_Waiters()
124
125 ---> System.Exception: Basic block has to end with unconditional control flow.
126{
127 IL_0000:
128 stloc:int32(var_0_06, ldfld:int32(ManualResetEventSlim::m_combinedState, ldloc:ManualResetEventSlim(this)))
129 brtrue(IL_0000, ldc.i4:bool(1))
130}
131
132 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
133 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
134 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
135 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
136 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
137 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
138 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
139 --- End of inner exception stack trace ---
140 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
141 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
142*/;
143 }
144 set
145 {
146 }
147 }
148
149 // Token: 0x060010E8 RID: 4328 RVA: 0x00023BB4 File Offset: 0x00021DB4
151 {
152 long num = 0L;
153 base..ctor();
154 if (!true)
155 {
156 }
157 this.Initialize(num != 0L, 1);
158 }
159
160 // Token: 0x060010E9 RID: 4329 RVA: 0x00023BD4 File Offset: 0x00021DD4
162 {
163 long num = 0L;
164 base..ctor();
165 this.Initialize(num != 0L, spinCount);
166 }
167
168 // Token: 0x060010EA RID: 4330 RVA: 0x00023BF4 File Offset: 0x00021DF4
169 private void Initialize(bool initialState, int spinCount)
170 {
172 if (32768 == 0)
173 {
175 }
176 this.m_combinedState = 32768;
177 }
178
179 // Token: 0x060010EB RID: 4331 RVA: 0x00023C24 File Offset: 0x00021E24
181 {
182 if (this.m_lock != null)
183 {
184 return;
185 }
186 }
187
188 // Token: 0x060010EC RID: 4332 RVA: 0x00023C3C File Offset: 0x00021E3C
189 private bool LazyInitializeEvent()
190 {
191 bool isSet = this.IsSet;
192 bool isSet2 = this.IsSet;
193 if (!false)
194 {
195 }
196 throw new OutOfMemoryException();
197 }
198
199 // Token: 0x060010ED RID: 4333 RVA: 0x00023C78 File Offset: 0x00021E78
200 public void Set()
201 {
202 long num = 0L;
203 this.Set(num != 0L);
204 }
205
206 // Token: 0x060010EE RID: 4334 RVA: 0x00023C90 File Offset: 0x00021E90
207 private void Set(bool duringCancellation)
208 {
209 this.UpdateStateAtomically(0, 32768);
210 int waiters = this.Waiters;
211 Monitor.Enter(this.m_lock, false);
212 Monitor.PulseAll(this.m_lock);
213 if (!false)
214 {
216 if (eventObj != null)
217 {
218 Monitor.Enter(eventObj, false);
219 if (this.m_eventObj != null)
220 {
221 bool flag = this.m_eventObj.Set();
222 }
223 if (false)
224 {
225 throw new OutOfMemoryException();
226 }
227 }
228 return;
229 }
230 throw new OutOfMemoryException();
231 }
232
233 // Token: 0x060010EF RID: 4335 RVA: 0x00023D24 File Offset: 0x00021F24
234 public bool Wait(int millisecondsTimeout, CancellationToken cancellationToken)
235 {
236 int num = 1;
237 this.ThrowIfDisposed();
238 bool isSet = this.IsSet;
239 if (millisecondsTimeout != 0)
240 {
242 int spinCount = this.SpinCount;
243 int num2 = 10;
244 bool isSet2 = this.IsSet;
245 if (num == 0)
246 {
247 }
249 if (num == 0)
250 {
251 }
252 object @lock = this.m_lock;
253 bool isSet3 = this.IsSet;
255 int waiters = this.Waiters;
256 bool isSet4 = this.IsSet;
257 object lock2 = this.m_lock;
258 long num3 = 0L;
259 bool flag = Monitor.Wait(lock2, millisecondsTimeout, num3 != 0L);
260 long num4 = 0L;
261 int waiters2 = this.Waiters;
262 this.Waiters = millisecondsTimeout;
263 if (num4 != 0L)
264 {
265 throw new OutOfMemoryException();
266 }
267 while (num2 == 0)
268 {
269 }
270 long num5 = 0L;
271 if (num != 0)
272 {
273 }
274 if (num5 != 0L)
275 {
276 throw new OutOfMemoryException();
277 }
278 }
279 if (false)
280 {
281 throw new OutOfMemoryException();
282 }
283 long num6 = 0L;
284 if (num != 0)
285 {
286 }
287 if (num6 == 0L)
288 {
289 throw new OutOfMemoryException();
290 }
291 throw new OutOfMemoryException();
292 }
293
294 // Token: 0x060010F0 RID: 4336 RVA: 0x00023E24 File Offset: 0x00022024
295 public void Dispose()
296 {
297 GC.SuppressFinalize(this);
298 }
299
300 // Token: 0x060010F1 RID: 4337 RVA: 0x00023E38 File Offset: 0x00022038
301 protected virtual void Dispose(bool disposing)
302 {
306 if (eventObj != null)
307 {
309 eventObj.Dispose();
310 if (false)
311 {
312 throw new OutOfMemoryException();
313 }
314 }
315 }
316
317 // Token: 0x060010F2 RID: 4338 RVA: 0x00023E8C File Offset: 0x0002208C
318 private void ThrowIfDisposed()
319 {
321 }
322
323 // Token: 0x060010F3 RID: 4339 RVA: 0x00023EA0 File Offset: 0x000220A0
324 private static void CancellationTokenCallback(object obj)
325 {
326 if (!false)
327 {
328 return;
329 }
330 throw new OutOfMemoryException();
331 }
332
333 // Token: 0x060010F4 RID: 4340 RVA: 0x00023ECC File Offset: 0x000220CC
335 {
337 }
338
339 // Token: 0x060010F5 RID: 4341 RVA: 0x0000207A File Offset: 0x0000027A
340 private static int ExtractStatePortionAndShiftRight(int state, int mask, int rightBitShiftCount)
341 {
342 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
343 }
344
345 // Token: 0x060010F6 RID: 4342 RVA: 0x0000207A File Offset: 0x0000027A
346 private static int ExtractStatePortion(int state, int mask)
347 {
348 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
349 }
350
351 // Token: 0x060010F7 RID: 4343 RVA: 0x00023EE0 File Offset: 0x000220E0
352 // Note: this type is marked as 'beforefieldinit'.
354 {
355 }
356
357 // Token: 0x0400091B RID: 2331
358 private object m_lock;
359
360 // Token: 0x0400091C RID: 2332
362
363 // Token: 0x0400091D RID: 2333
364 private int m_combinedState;
365
366 // Token: 0x0400091E RID: 2334
368 }
369}
class f__AnonymousType0<< Count > j__TPar
static int TickCount
static void SuppressFinalize(object obj)
Definition GC.cs:116
static void CancellationTokenCallback(object obj)
static int ExtractStatePortion(int state, int mask)
ManualResetEventSlim(bool initialState, int spinCount)
static Action< object > s_cancellationTokenCallback
void Initialize(bool initialState, int spinCount)
static int ExtractStatePortionAndShiftRight(int state, int mask, int rightBitShiftCount)
bool Wait(int millisecondsTimeout, CancellationToken cancellationToken)
void UpdateStateAtomically(int newBits, int updateBitsMask)
static bool Wait(object obj, int millisecondsTimeout, bool exitContext)
Definition Monitor.cs:64
static void PulseAll(object obj)
Definition Monitor.cs:94
static void Enter(object obj)
Definition Monitor.cs:11