Fix infrequent hangs in test-runner. (#16793)
[mono-project.git] / mcs / class / referencesource / System / services / monitoring / system / diagnosticts / ThreadWaitReason.cs
blobe14c94d9d9400aaa7ff98a78b1d8107be3741e38
1 //------------------------------------------------------------------------------
2 // <copyright file="ThreadWaitReason.cs" company="Microsoft">
3 // Copyright (c) Microsoft Corporation. All rights reserved.
4 // </copyright>
5 //------------------------------------------------------------------------------
7 namespace System.Diagnostics {
8 using System.Threading;
10 using System.Diagnostics;
11 /// <devdoc>
12 /// Specifies the reason a thread is waiting.
13 /// </devdoc>
14 public enum ThreadWaitReason {
16 /// <devdoc>
17 /// Thread is waiting for the scheduler.
18 /// </devdoc>
19 Executive,
21 /// <devdoc>
22 /// Thread is waiting for a free virtual memory page.
23 /// </devdoc>
24 FreePage,
26 /// <devdoc>
27 /// Thread is waiting for a virtual memory page to arrive in memory.
28 /// </devdoc>
29 PageIn,
31 /// <devdoc>
32 /// Thread is waiting for a system allocation.
33 /// </devdoc>
34 SystemAllocation,
36 /// <devdoc>
37 /// Thread execution is delayed.
38 /// </devdoc>
39 ExecutionDelay,
41 /// <devdoc>
42 /// Thread execution is suspended.
43 /// </devdoc>
44 Suspended,
46 /// <devdoc>
47 /// Thread is waiting for a user request.
48 /// </devdoc>
49 UserRequest,
51 /// <devdoc>
52 /// Thread is waiting for event pair high.
53 /// </devdoc>
54 EventPairHigh,
56 /// <devdoc>
57 /// Thread is waiting for event pair low.
58 /// </devdoc>
59 EventPairLow,
61 /// <devdoc>
62 /// Thread is waiting for a local procedure call to arrive.
63 /// </devdoc>
64 LpcReceive,
66 /// <devdoc>
67 /// Thread is waiting for reply to a local procedure call to arrive.
68 /// </devdoc>
69 LpcReply,
71 /// <devdoc>
72 /// Thread is waiting for virtual memory.
73 /// </devdoc>
74 VirtualMemory,
76 /// <devdoc>
77 /// Thread is waiting for a virtual memory page to be written to disk.
78 /// </devdoc>
79 PageOut,
81 /// <devdoc>
82 /// Thread is waiting for an unknown reason.
83 /// </devdoc>
84 Unknown