上一篇博客向大家非常详细的介绍了JNI的字段和方法,想必大家都对JNI与Jvm交互有了更深刻的认识。Android NDK(五):字段和方法

本篇博客内容继续探索JNI,今天要和大家分享的内容是JNI中的引用。大家对引用肯定都不陌生了,我们每天所写的代码不知道有多少引用存在。JNI种的引用又是怎样的呢?一起来看看~

内容会以引用的类型逐一分析,JNI支持三种引用类型,大致分类如下:

 1. 局部引用

 2. 全局引用

 3. 弱引用

 4. 释放引用

局部引用和全局引用具有不同的生命周期,和Java中的一样,当本地方法返回时,局部引用将被自动释放,而全局引用和弱引用需要手动释放。

一、局部引用

大多数JNI函数都会创建局部引用,释放一个局部引用有两种方式:(1)本地方法执行完毕,VM自动回收释放(2)调用DeleteLocalRef手动释放。

局部引用只在创建的当前线程有效,跨线程使用是禁止的。不要在一个线程中穿件局部引用存储到全局引用中,然后到另一个线程去使用。

 

更多相关文章

  1. Android(安卓)将Activity及其他类打包成jar包供第三方调用
  2. Android(安卓)Framework学习(六)之RefBase,SP,WP
  3. android,内存优化详解 .
  4. Android中的引用传递和值传递分析(Java)
  5. Android(安卓)将Activity打成jar包供第三方调用
  6. 在android开发中应该如何管理内存或者是在开发过程中应该注意哪
  7. Android(安卓)Handler 解决循环引用
  8. List of Android(安卓)MIME types and Uri's
  9. Accessing Resources

随机推荐

  1. Android加密之文件级加密
  2. 如何监控android的流量信息
  3. Android(安卓)程序适应多种多分辨率
  4. 史上最全的Android面试题集锦
  5. Android(安卓)getDimensionPixelSize, 代
  6. Android(安卓)内存管理
  7. 《Android(安卓)开发工程师面试指南》
  8. android的图形系统
  9. android应用安全——通信安全(android htt
  10. 在Android上调用OpenCV 2.4.10库函数