找回密碼
 注冊帳號

掃一掃,訪問微社區

androidjni.poplocalframe 彈出局部幀

2014-12-30 21:34| 發布者: 楊炎| 查看: 1585| 評論: 0|原作者: 蠻牛|來自: unity3d腳本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)

相關閱讀

文章點評
相關文章
女校游泳队彩金