VS2010 调试器花费了不合理的时间
Posted
技术标签:
【中文标题】VS2010 调试器花费了不合理的时间【英文标题】:VS2010 debugger takes an unreasonable amount of time 【发布时间】:2010-06-22 17:46:19 【问题描述】:是否有其他人在 C++ 中处理过 VS2010 调试,并且每次执行步骤时它都会在那里停留 30 多秒?这发生在我身上,调用堆栈窗口在冻结期间只有一个灰色的东西,上面写着“忙……”。整个界面都被锁定了……我所做的每一步,现在我正试图逐步完成这个基于策略的大规模设计,以找出 WTF,当我知道时,我得到了一个“没有 RTTI 数据”的错误编译器正在使用 RTTI。
无论如何,这让我非常沮丧,所以如果有人知道如何将这件事加速到至少蜗牛的速度,那就太好了。
【问题讨论】:
我在大型、非托管 C++ 项目中没有遇到过这样的困难。 看起来这些错误已经打败了调试器。抗毒? 关闭一个合理的问题??我猜有些人只有 100% 的括约肌。 考虑在 Connect (connect.microsoft.com/VisualStudio/Feedback) 上创建错误票证。此外,在这 30 年代的一个挂起期间的小型转储(更好的是,有几个以确保捕获真正的问题)对于调查这类事情也非常有帮助。 调试器是否在堆栈溢出期间启动? (或接近一个。)当堆栈空间消失或变低时,我让调试器执行得非常糟糕。 【参考方案1】:你见过这些吗?
Visual Studio debugger slows down in in-line code
Slow debugging issue in Visual Studio
【讨论】:
不,我没有。不幸的是,他们似乎没有解决我的特殊问题。有人认为它已在 2008 sp1 中修复,但我有一个更新的编译器。假设它可能是一个回归,但我搞砸了。它是内联代码...【参考方案2】:您没有使用数据断点或条件断点吗?这两者都会显着减慢跑步/步进。
【讨论】:
没有。不过感谢您的尝试。【参考方案3】:如果调试器尝试从符号服务器下载符号并且服务器连接缓慢(或无法访问)或保存它们时出现问题,我过去曾见过类似的问题。所以首先检查符号设置(调试 -> 选项 -> 符号)。尝试完全禁用符号查找,或者如果您使用的是本地符号服务器,请检查可访问性和目录权限。
如果这不能解决问题,请尝试在挂起期间运行Process Monitor,因为这可能会告诉您出了什么问题,例如,如果有东西试图访问网络驱动器或不存在的文件或目录。它可能会为您提供足够的提示来诊断问题。
【讨论】:
以上是关于VS2010 调试器花费了不合理的时间的主要内容,如果未能解决你的问题,请参考以下文章
如何重置 VisualStudio(VS2010、VS2012)调试器缓存?
C++中的VS2010调试器,“unused=???”的意思或“未使用=0”