.Net Profiling API方法

时间:2009-03-06 01:50:26

标签: .net profiling

我有一种感觉,我可能已经知道这个问题的答案,但无论如何我都会问它。

有没有更好的方式使用.Net Profiling API而不是COM / Managed C ++路由?

我不愿意遵循建议的COM方法是这样的:

  • 努力,开始时需要做很多工作
  • 不喜欢连接C ++ dll所涉及的魔法,不容易重新分配项目
  • 感觉难以进行单元测试
  • 不想在C ++中行为。我可以创建一个互操作层,但这还需要更多工作
  • 难以调试。从我收集到的内容中,您无法将调试器附加到实际的C ++层,因此您将返回日志文件等

我遇到了一个名为NProf的项目,它试图用管理层包装API。不幸的是,它自2003年以来一直没有更新。

有没有人有任何可能有帮助的线索?这一切都感觉有点讨厌。

澄清:

  • 这描述了我所指的API:The Profiling API
  • 我正在使用Visual Studio 2008和框架的v3.5

2 个答案:

答案 0 :(得分:2)

你可以看一下Part-Cover。它是一个代码覆盖工具(GPL),但它与NCover的工作方式类似,这意味着它使用分析API来完成它的工作。不确定代码有多好或多坏,以及它对你有多大的帮助(GPL也可能是一个问题),但你可能想看看它。它已于去年年底更新,然后保持沉默,所以我不确定该项目是否仍然有效。

答案 1 :(得分:0)

分析是一个非常低级别和性能敏感的区域,因此它作为低级API公开。我认为这只是为这种功能带来的领域。

您能否详细说明调试问题...您应该能够将非托管调试器附加到您正在分析的托管可执行文件,并使用它来调试您的分析器DLL。