【问题标题】:JNI(Java) equivalent of INCREF, DECREF used in python embed for C++?JNI(Java)等效于 INCREF,DECREF 用于 C++ 的 python 嵌入?
【发布时间】:2012-01-19 13:44:24
【问题描述】:

什么是 INCREF 的 JNI(Java) 等价物,DECREF 用于 python嵌入C++?

或者没有等价物? 为什么没有任何等价物?

【问题讨论】:

标签: java c++ python java-native-interface


【解决方案1】:

Java 的垃圾收集模型不同:Python 使用引用计数作为其主要的垃圾收集方法,而 Java 没有。

Java 使用所谓的“跟踪”垃圾收集器:Wikipedia

考虑到这一点,与INCREFDECREF 最接近的等价物可能是NewGlobalRefDeleteGlobalRef

参见 JNI 手册的Chapter 5

【讨论】:

  • 既然Java不使用引用计数,那么Java使用什么模型进行垃圾回收呢?
  • @seahorse:参见维基百科中的“跟踪垃圾收集器”:en.wikipedia.org/wiki/…
  • 感谢您解释区别!
猜你喜欢
  • 2014-11-03
  • 2019-01-31
  • 2023-03-26
  • 2016-08-04
  • 1970-01-01
  • 2011-06-03
  • 2010-11-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多