0

我观察到,当与视觉泄漏检测器一起使用时,该应用程序比正常运行的 exe 花费的时间要长得多。我知道这通常需要更多时间,但这确实需要更多时间,这是否取决于 ppl 库的使用或其他什么?

4

1 回答 1

0

这是完全正常的。视觉泄漏检测器为每个 c/c++ 内存分配(通过CrtSetAllocHook)调用 StackWalk64() 并记录结果 - 这增加了巨大的开销。您的程序调用 new() / malloc() 越多,负担就越重 - 大多数程序都会分配大量内存,甚至是间接分配。

不要将它用于常规运行,仅在尝试调试特定泄漏时使用。即便如此,我也会考虑使用内置的 CRT 替代品。

于 2014-08-26T12:40:43.797 回答