在某些内存限制命中后中断

时间:2011-08-25 19:54:03

标签: c++ visual-studio memory breakpoints

如果exe达到某个内存限制,有没有办法让visual studio打破c ++项目?假设exe使用了200mb,那么它将会中断并显示它所在的代码行。

1 个答案:

答案 0 :(得分:3)

您是在谈论工作集大小还是堆内存?堆内存很简单:调试VC ++ Runtime有_CrtSetAllocHook,它在每次内存分配/重新分配/免费调用时调用用户提供的函数。

http://msdn.microsoft.com/en-us/library/820k4tb8.aspx

您可以安装挂钩,然后对内存分配求和。如果达到阈值,可以调用_debugbreak()进入调试器。