CorDebugBlockingReason Enumeration
Specifies the reasons why a thread may become blocked on a given object.
Syntax
Typedef enum CorDebugBlockingReason
{
BLOCKING_NONE = 0
BLOCKING_MONITOR_CRITICAL_SECTION = 1
BLOCKING_MONITOR_EVENT = 2
} CorDebugBlockingReason;
Members
Member | Description |
---|---|
BLOCKING_NONE |
Internal use only. |
BLOCKING_MONITOR_CRITICAL_SECTION |
A thread is trying to acquire the critical section that is associated with the monitor lock on an object. Typically, this occurs when you call one of the Monitor.Enter or Monitor.TryEnter methods. |
BLOCKING_MONITOR_EVENT |
A thread is waiting on the event that is associated with a monitor lock for an object. Typically, this occurs when you call one of the System.Threading.MonitorWait methods. |
Remarks
When the BLOCKING_MONITOR_CRITICAL_SECTION
or BLOCKING_MONITOR_EVENT
member is used in a CorDebugBlockingObject structure, the pBlockingObject
member of the structure points to an "ICorDebugValue" interface that represents the object that is being entered. It is also guaranteed to implement the ICorDebugHeapValue3 interface.
Requirements
Platforms: See System Requirements.
Header: CorDebug.idl, CorDebug.h
Library: CorGuids.lib
.NET Framework Versions: Available since 4
See also
Collaborate with us on GitHub
The source for this content can be found on GitHub, where you can also create and review issues and pull requests. For more information, see our contributor guide.