performance - DebugDiag 没有为 .NET 4.6 MVC5 应用程序提供堆栈跟踪

标签 performance .net-4.6 debugdiag

我正在尝试通过分析由 DebugDiag 2.1.0.7 创建的转储来调试由 .NET 4.6 MVC5 应用程序引起的一些 CPU 问题。我发现即使在加载自定义 .pdb 符号后我仍然没有在生成的报告中获得堆栈跟踪信息:

enter image description here

报告显示的错误是

Type: Microsoft.Diagnostics.Runtime.ClrDiagnosticsException
Message:  This runtime is not initialized and contains no data.

enter image description here

我注意到 DebugDiag 1.2 版不支持 .NET 4.0+。 DebugDiag 2.1 可能不支持 .NET 4.6 吗?

最佳答案

我的 CPU 问题归结为我在错误位置初始化的第三方软件。它需要在 Application_Start() 中初始化,而我在 Application_BeginRequest() 中进行初始化。哎呀!如果您遇到这种情况,并且正像我一样手忙脚乱地尝试调试生产应用程序中的问题,请确保检查 Global.asax 以了解此类问题。

我猜测 DebugDiag 的 StackTrace 问题与导致 CPU 问题的代码在应用程序生命周期中发生的位置有关。

关于performance - DebugDiag 没有为 .NET 4.6 MVC5 应用程序提供堆栈跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32916417/

相关文章:

android - 主线程使用

sdk - Xperfview : What's the difference between CPU sampling and CPU Usage?

sql - 关系数据库设计的好资源

c# - 我需要使用MS Debug Diagnostic Tool来分析CPU使用率较高的C#应用​​程序的帮助

windbg - WinDBG为什么找不到mscordacwks.dll?

performance - MATLAB性能基准测试

c# - ASP.NET 应用程序中的 Thread.Abort 导致 w3wp.exe 崩溃

c# - 使用 VS2015 Update 1 编译时表达式破坏代码

c# - 在 FormattableString 和 (str, params object[]) 之间转换

.net - 使用 DebugDiag 和 LeakTrack 对 Windows 应用商店应用程序中的 native 内存泄漏进行故障排除