ICorDebugHeapValue3::GetThreadOwningMonitorLock 方法

返回拥有此对象上的监视器锁的托管线程。

HRESULT GetThreadOwningMonitorLock (
    [out] ICorDebugThread   **ppThread,
    [out] DWORD              *pAcquisitionCount
);

参数

  • ppThread
    [out] 拥有此对象的监视器锁的托管线程。

  • pAcquisitionCount
    [out] 在锁返回无主状态之前,此线程必须将锁释放的次数。

返回值

此方法将返回以下特定的 HRESULT 以及用于指示方法失败的 HRESULT 错误。

HRESULT

说明

S_OK

该方法成功完成。

S_FALSE

不存在拥有此对象的监视器锁的托管线程。

备注

如果一个托管线程拥有此对象的监视器锁,则:

  • 该方法将返回 S_OK。

  • 线程对象在线程退出之前有效。

如果不存在拥有此对象的监视器锁的托管线程,则 ppThread 和 pAcquisitionCount 都保持不变,并且此方法将返回 S_FALSE。

如果 ppThread 或 pAcquisitionCount 不是有效指针,则结果是未定义的。

如果出现导致无法确定哪些线程拥有此对象的监视器锁(如果有)的错误,则此方法将返回指示失败的 HRESULT。

要求

**平台:**请参见 .NET Framework 系统要求

头文件: CorDebug.idl、CorDebug.h

**库:**CorGuids.lib

**.NET Framework 版本:**4

请参见

其他资源

调试接口

调试(非托管 API 参考)