在我们的应用程序中,我们使用的是一个使用大量大Qt容器的类。如果在Visual Studio调试器连接到进程时该类的对象被销毁,释放内存极其缓慢(多分钟)。它仍然工作正常,但非常缓慢。使用可视化调试器释放内存很慢
前一段时间我已经可以确认调试器的内存检查是否有责任。这是一个已知的问题。
我解决了这个问题,只需通过调试程序停止应用程序,如果它停留在释放内存或通过没有附加调试器启动它。
但是现在我需要调试定期释放这些对象的代码。当然,它可以工作,但速度慢,因为我需要做很多周期,所以我需要更好的解决方案。
有什么办法可以禁用VS2013调试器中的堆内存检查吗?或者有没有办法从这些检查中排除一些变量?
即使你已经确认MSVC的内存检查是导致这种速度下降的原因,我还是会看看你自己的代码,看看是否有效率低下(比如不必要的对象创建/删除?) – YePhIcK
这就是我检查的第一件事。不幸的是,我无法以不会触发问题的方式更改代码。 – Silicomancer