gpt4 book ai didi

c# - DebugDiag 在 .NET 4 下不显示 .NET 堆栈信息

转载 作者:太空狗 更新时间:2023-10-29 20:36:57 24 4
gpt4 key购买 nike

感觉可能有一个简单的答案,但我一直没能找到。

所讨论的场景是 C# .NET 控制台应用。

我通常使用 DebugDiag 1.2 来检查来 self 们遇到的挂起的 .dmp 文件 - 通常是线程锁定问题。它们是使用 DebugDiag 的“创建完整用户转储”选项创建的。

我最近开始编译面向 .NET 4 的应用程序,为开始使用 .NET 4 的某些功能做准备。但是,我注意到在使用 DebugDiag 分析这些 .dmp 文件时,所有 .NET 堆栈信息都丢失了。

如果我将 CLR 目标更改回 .NET 3.5,并从新的可执行文件中捕获 .dmp,则那里有 .NET 调用堆栈信息。

当我查看 DebugDiag 的输出时,我看到一条说明:

CLR Information

CLR version = 4.0.30319.17929 CLR Debugger Extension = C:\Program Files\DebugDiag\Exts\psscor4.dll

.NET Threads Summary

Failed to request ThreadStore

我认为“请求线程存储失败”是问题的关键,因为 .NET 3.5 .DMP 文件(使用 psscor2.dll)在“线程摘要”标题下报告了所有线程信息。

问题是 .dmp 缺少信息,还是 DebugDiag 由于某种原因无法检索它?

最佳答案

最终,这个问题自行解决了。我就此向 Microsoft 发送了一个问题,他们说 DebugDiag 1.1 不支持 .NET 4+。他们不久前发布了 v1.2,这确实 - 再次像一个魅力:

http://www.microsoft.com/en-us/download/details.aspx?id=26798

关于c# - DebugDiag 在 .NET 4 下不显示 .NET 堆栈信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14589462/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com