请高手看看这段JNI调用dll的代码有没有内存泄露
1个回答
展开全部
dll的话,一般属于windows上的动态链接库,内存泄露也主要属于c,c++之类的语言,
这样的话,可以考虑调用windows系统自带的系统api函数,
_CrtDumpMemoryLeaks();
在应用程序的最后,退出的时候,调用一下就可以知道哪里有内存没有释放,
如果想查看某一个函数的内存没有释放,可以使用api:
_CrtMemState s1, s2, s3;
_CrtMemCheckpoint(&s1);
执行检查的部分代码
_CrtMemCheckpoint(&s2);
_CrtMemDifference(&s3, &s1, &s2)
_CrtMemDumpStatistics(&s3);
这样可以检查一段执行区间有没有内存泄露,
希望对你有用,我是ndk吧吧主,有问题可以ndk吧留言,谢谢!
这样的话,可以考虑调用windows系统自带的系统api函数,
_CrtDumpMemoryLeaks();
在应用程序的最后,退出的时候,调用一下就可以知道哪里有内存没有释放,
如果想查看某一个函数的内存没有释放,可以使用api:
_CrtMemState s1, s2, s3;
_CrtMemCheckpoint(&s1);
执行检查的部分代码
_CrtMemCheckpoint(&s2);
_CrtMemDifference(&s3, &s1, &s2)
_CrtMemDumpStatistics(&s3);
这样可以检查一段执行区间有没有内存泄露,
希望对你有用,我是ndk吧吧主,有问题可以ndk吧留言,谢谢!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询