JNI错误:本地引用表溢出512个条目

JNI错误:本地引用表溢出512个条目,第1张

JNI错误:本地引用表溢出512个条目

所有返回一个

jobject
或类似对象引用的JNI方法都在引用表中创建本地引用。当您将控制权返回给JVM时,这些引用会自动清除,但是如果要创建许多引用(例如,在循环中),则需要手动清除它们。

通过调用引用,您处在正确的轨道

DeleteLocalRef
cls
,但是请注意,它
GetObjectField
还会返回一个
jobject
,因此在退出该函数之前,也应删除在此返回的引用。

从错误情况返回之前,还请确保清除所有现有引用!

执行此 *** 作的另一种方法:在循环中要调用的函数的顶部,在要返回的函数中的任何位置之前先调用

PushLocalframe( env, 5)
并调用
PopLocalframe(env)
。这将自动清除在该函数调用期间创建的所有引用。第二个参数是框架中所需的本地引用数-
如果在函数执行期间需要5个以上的本地引用,请使用大于5的值。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5489025.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存