vs2013如何测试程序运行时间和占用内存

vs2013如何测试程序运行时间和占用内存,第1张

您好,跟踪new,F11一步步进去,有个地方会有lRequest和size,lRequest就是报的那个内存泄露id和size。加上条件断点,重启,大多数情况可以得出结果,有时由于每次启动给对象分配的id会变,也不好抓毁氏到。纤坦散

凡是内存泄漏,就是new的内存的没释放。

F11就是调试跟踪。

lRequest就是调试状态下new对象分配的内存id,程序退出后output窗口那个泄露id。size是分配的大小。

条件断点,就是符合一定条件才停下来的断点。

结果就是条件断点激发,调试器暂停。这时候看函信薯数调用堆栈,new函数在哪里,就是哪里内存泄漏。

可以用Stopwatch

Stopwatch 内隐核部也调用了 QueryPerformanceCounter() 和 QueryPerformanceFrequency() 两个函数,与 QueryPerfCounter 不同的是,当 Stopwatch 检测到当前的系统和硬件不支持高精度的计数器时,它将转用我们所熟悉的 DateTime 做法。

Stopwatch 在其静态构造器中调用 QueryPerformanceFrequency(),透过该函数的返回值判断当前的系统和硬件是否支持高喊芦精度的计数器,并设置 IsHighResolution 属性的值。灶渗掘Stopwatch 内部用于计算时间间隔的主要方法都会根据 IsHighResolution 的值来选择合适的计算方法。有兴趣的话,你可以使用 Reflector 探究一下 Stopwatch 的内部。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12539229.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-26
下一篇2025-08-26

发表评论

登录后才能评论

评论列表(0条)

    保存