//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//------------------------------------------------------------------------------
namespace System.Diagnostics {
using System.Threading;
using System.Diagnostics;
///
/// Specifies the reason a thread is waiting.
///
public enum ThreadWaitReason {
///
/// Thread is waiting for the scheduler.
///
Executive,
///
/// Thread is waiting for a free virtual memory page.
///
FreePage,
///
/// Thread is waiting for a virtual memory page to arrive in memory.
///
PageIn,
///
/// Thread is waiting for a system allocation.
///
SystemAllocation,
///
/// Thread execution is delayed.
///
ExecutionDelay,
///
/// Thread execution is suspended.
///
Suspended,
///
/// Thread is waiting for a user request.
///
UserRequest,
///
/// Thread is waiting for event pair high.
///
EventPairHigh,
///
/// Thread is waiting for event pair low.
///
EventPairLow,
///
/// Thread is waiting for a local procedure call to arrive.
///
LpcReceive,
///
/// Thread is waiting for reply to a local procedure call to arrive.
///
LpcReply,
///
/// Thread is waiting for virtual memory.
///
VirtualMemory,
///
/// Thread is waiting for a virtual memory page to be written to disk.
///
PageOut,
///
/// Thread is waiting for an unknown reason.
///
Unknown
}
}