gpt4 book ai didi

c# - 如何通过分析 API(ICofProfilerInfo 或任何 IMetadataImport 或任何其他方式)读取 System.Threading.Thread.ThreadState

转载 作者:行者123 更新时间:2023-11-30 22:33:28 27 4
gpt4 key购买 nike

有没有办法通过分析 API ICofProfilerInfo 或 IMetadataImport 接口(interface)或任何其他方式从非托管代码读取托管线程的 System.Thread.ThreadState 属性?

例如这样的事情:

ICorProfilerInfo3 pProfilerInfo = ...;
ThreadID threadId;
pProfilerInfo->GetCurrentThreadID(&threadId);
ThreadState threadState;
pSomethingWhatINeed->GetManagedTheadState(threadId, &threadState);
if(threadState == THREADSTATE_WAIT_JOIN_SLEEP){
//do something
}

最佳答案

可以使用ICorDebug.GetProcess获取ICorDebugProcess,从中可以调用GetThread获取ICorDebugThread .然后调用GetUserState获取CorDebugUserState .但是请注意,当使用 ICorDebug 时,调试器和被调试器必须是不同的进程。

关于c# - 如何通过分析 API(ICofProfilerInfo 或任何 IMetadataImport 或任何其他方式)读取 System.Threading.Thread.ThreadState,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8278640/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com