JNI指针依赖项的设计模式

时间:2011-03-19 16:48:19

标签: java c java-native-interface

我正在使用JNI为某些C代码创建Java包装器。 C侧有依赖关系,如下所示:

a = make_a();
b = make_b(a);

在Java方面,我使用class Aclass B来保存对make_a()make_b输出的引用,以及各种操作。此外,class B依赖于class A

如何在JNI中创建两个类之间的依赖关系?

更新

我需要A类在使用B类时不要GC,我需要在JNI中创建这种依赖。

1 个答案:

答案 0 :(得分:1)

我认为你想要的是NewGlobalRef / DeleteGlobalRef。这将让您的JNI挂起到对象引用。小心 - 这是一种创建内存泄漏的简单方法,因为它可以删除引用!

以下是一些让您前往的链接: