我尝试使用Google V8库但发现内存泄漏。 这些非常小的代码出现了这些内存泄漏:
//I link with v8 in my project settings (Visual studio 2008 )
#include <v8.h>
void test(){ // Never called
v8::V8::Initialize();
}
void main(){
exit (0);
}
你有想法阻止内存泄漏吗?
提前致谢。
答案 0 :(得分:0)
感谢您的大力帮助
答案 1 :(得分:0)
您可以使用http://msdn.microsoft.com/en-us/library/5at7yxcs%28v=vs.71%29.aspx中所述的_CrtSetDbgFlag设置标志_CRTDBG_ALLOC_MEM_DF和_CRTDBG_LEAK_CHECK_DF,并删除对_CrtDumpMemoryLeaks()的显式调用,一旦所有进程终止,它将自动调用。
不幸的是,这并没有解决v8的问题(这是我到达这篇文章的方式),但它确实适用于Qt应用程序,我也在寻找完整的答案。
由于某种原因,除了添加
之外,它现在对我有用_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF)
在main / WinMain的开头,我所做的只是打电话
V8 :: V8 :: Dispose()方法
程序终止前。