栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用JNI从C调用Java代码时发生内存泄漏

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用JNI从C调用Java代码时发生内存泄漏

调用New …函数时,将创建一个“本地引用”-在本地堆栈框架中对此对象的引用。这样可以防止Java
VM在仍需要该对象时从其GC。如果您要实现某些本机方法,这很好-
它的局部框架仅在方法调用期间创建。但是,当您从与Java关联的本机线程创建对象时,该对象将绑定到该线程堆栈框架,该框架仅会被该线程破坏。

因此,当您处理完一个对象时,可以调用DeleteLocalRef()告诉您不再需要它。或者,您可以将整个add()函数用一对PushLocalframe()/
PopLocalframe()包围起来,以在其持续时间内创建一个单独的本地帧。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/609528.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号