遍历运行时可调用包装器 (RCW) 清理列表,并为每个条目调用访问者回调。
Note
此 API 最初旨在供运行时内部使用。 尽管现在支持第三方使用,但我们建议尽量使用 ICorDebug 和 ICorProfiler API。
Syntax
HRESULT TraverseRCWCleanupList(CLRDATA_ADDRESS cleanupListPtr, VISITRCWFORCLEANUP pCallback, LPVOID token);
Parameters
cleanupListPtr
[in]要遍历的 RCW 清理列表的地址。
pCallback
[in] VISITRCWFORCLEANUP 运行时为每个清理列表条目调用的回调函数。
token
[in]运行时传递给 pCallback的调用方提供的值。
Remarks
提供的方法是接口的 ISOSDacInterface 一部分,对应于虚拟方法表的第 79 个槽。
回调 VISITRCWFORCLEANUP 具有以下签名:
typedef BOOL (*VISITRCWFORCLEANUP)(CLRDATA_ADDRESS RCW,CLRDATA_ADDRESS Context,CLRDATA_ADDRESS Thread,
BOOL bIsFreeThreaded, LPVOID token);
回调接收 RCW 地址、COM 上下文地址、线程地址、指示 RCW 是否为自由线程和调用方提供的值的 token 标志。
要求
平台:请参阅系统要求。
页眉: 没有
图书馆: 没有
.NET Framework 版本:自 4.7 起可用