c# – 从.NET程序中获取全局根
我最近开始使用ANTS分析工具进行生产工作.除了惊讶于他们的精彩之外,我不禁想知道他们是如何工作的.例如,最有用的功能之一允许您可视化正在运行的程序的全局根,其中包含对不同类型值的引用数.
该工具如何获取该信息? 解决方法
(完全披露:我在Visual Studio Profiler团队,但以下信息是公开的)
您可以通过编写在您要定位的流程内运行的CLR分析器来完成此操作. CLR分析器是C COM对象,当设置了COR_PROFILER和COR_PROFILING_ENABLED环境变量时,它们将被运行时实例化(参见here).有两个主要的CLR profiling interfaces,特别是 使用您的探查器进程,您可以强制GC到 您可以使用 为了激活上面提到的回调,您需要告诉您对它们感兴趣的CLR概要分析API.您可以通过在调用 David Broman是CLR分析器的开发人员,his blog提供了大量有关分析的大量信息,包括您可能遇到的所有疯狂陷阱和问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |