5

SOS.dll Windbg 扩展的文档似乎很少。发出 !gcroot <address> 后,我得到了包含以下内容的内容:

DOMAIN(XXX):HANDLE(Pinned):XXX:Root:XXX(System.Object[])->

“HANDLE(Pinned)”真的意味着有一个 GCHandleType.Pinned 类型的 GCHandle 正在植根这个对象吗?

4

4 回答 4

4

它本身可能不是固定的,而是可能是一个静态引用。看看这里:http: //blogs.msdn.com/dougste/archive/2005/11/25/497016.aspx

于 2009-08-13T15:28:00.383 回答
1

是的,这确实意味着对象已固定。现在您必须找到固定对象并阻止它被垃圾收集的原因。

于 2009-08-13T14:14:11.440 回答
0

是的,它确实。另一个可能的值而不是固定值是 WeakLn,这意味着它将在下一次扫描时被垃圾收集。

于 2009-08-05T04:19:44.290 回答
0

我知道http://social.msdn.microsoft.com/Forums/en-US/clr/thread/e52936b4-15c4-434f-91b9-4640df66d0c6上的 MSFT 版主 Karel Zikmund说“是”。但我正在寻找额外的意见、见解等。谢谢!

于 2009-08-05T04:07:05.127 回答