c# - 我是否完全误解了如何使用 Visual Studio 的 2008 分析器?

标签 c# visual-studio-2008 profiling c++-cli

提示{

当我使用 Visual Studio 2008 的探查器(从“分析”菜单选项)来探查我的代码时,我总是非常沮丧。在我看来,它是 VS 设计最糟糕的功能之一,每次需要使用它时我都会畏缩。

}

关于它的使用有几个问题,希望大家多多指点:-)

  1. 您的项目是否需要在 Debug 或 Release 中构建才能对其进行分析?一个对话框(我不知道如何返回)提到我应该在 Release 下进行配置。好的 - 我这样做了 - 当我运行代码时,它告诉我缺少 PDB 文件。惊人的。所以我回到 Debug模式,尝试运行它,它告诉我一半的项目需要在/PROFILE 开关打开的情况下重新编译。
  2. 是否可以分析 C++/CLI 项目?打开/PROFILE 开关后,有一半时间我的 C++/CLI 项目完全没有输出。
  3. 为什么在尝试分析 C# 项目时,它们在模块 View 名称列表下的报告中显示为 0x0000001、0x0000002、0x0000003 等?真的吗,VS?真的吗?您不能猜猜我的模块名称吗?
  4. 就此而言,为什么函数名称报告为 0x0A000011、0x06000009、0xA0000068 等?
  5. 为什么,哦,为什么 VS 会重建正在分析的可执行文件的依赖关系树中的所有内容?如果您的解决方案中有 5-6 个项目,这可能不是问题,但当您有 70 个项目时,几乎不用分析器就快得多
  6. 你能推荐任何关于使用 VS2008 分析器的好指南吗?

最佳答案

如果您发现它难以使用,可以使用一个非常棒的 .NET 探查器 nprof ,如果您正在调试非 CLR 项目,AMD 有一个非常出色的统计分析器,称为 Code Analyst .

两者都是免费的 (!),而且非常易于使用。一个更好的选择,我希望从你上面的帖子中你准备好放弃 VS 内置分析器:)

关于c# - 我是否完全误解了如何使用 Visual Studio 的 2008 分析器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/689853/

相关文章:

c++ - QtCreator : "Cannot open include file: ' windows. h'”

unit-testing - 自动分析/单元测试 NHibernate 行为

c++ - 在分析代码时,我应该使用匹配的 (gcc) 编译器优化标志吗?

c# - 程序集范围的多播属性。他们是邪恶的吗?

visual-studio-2008 - 如何确定哪些 C/C++ 对象使用最多内存

c# - .NET 中的 Erlang 风格的轻量级进程

c# - 业务对象和数据层

android - 如何在 Android Studio 3.0 中查看 native 内存和图形内存的分配

c# - 我可以从一个线程使用 System.Threading.Timer 启动多少个线程(计时器)?

c# - 将整数转换为对象并返回会导致 InvalidCastException