androidjni.poplocalframe 弹出局部帧

2014-12-30 21:34| 发布者: 杨炎| 查看: 1360| 评论: 0|原作者: 蛮牛|来自: yzc88亚洲城脚本manual

摘要: androidjni.poplocalframe 弹出局部帧static functionpoplocalframe(result: intptr) : intptrdescription描述pops off the current local reference frame, frees all the local references, and returns a local r ...

androidjni.poplocalframe 弹出局部帧

static functionpoplocalframe(result: intptr) : intptr

description描述

pops off the current local reference frame, frees all the local references, and returns a local reference in the previous local reference frame for the given result object.

弹出关闭当前局部引用帧,释放所有的本地引用,并返回一个局部引用,在前一个局部引用帧,用于给定的结果对象

pushlocalframe为一定数量的局部引用创建了一个使用堆栈,而poplocalframe负责销毁堆栈顶端的引用。

push/poplocalframe函数对提供

了对局部引用的生命周期更方便的管理

在管理局部引用的生命周期中,push/poplocalframe是非常方便的。你可以在本地函数的入口处调用pushlocalframe,然后在出口处调用poplocalframe,这样的话,在函数对中间任何位置创建的局部引用都会被释放。而且,这两个函数是非常高效的。

如果你在函数的入口处调用了pushlocalframe,记住在所有的出口(有return出现的地方)调用poplocalframe。

大量的局部引用创建会浪费不必要的内存。一个局部引用会导致它本身和它所指向的对象都得不到回收。尤其要注意那些长时间运行的方法、创建局部引用的循环和工具函数,充分得利用pus/poplocalframe来高效地管理局部引用。

参见:java native interface specification (oracle)

相关阅读

文章点评
相关文章