gpt4 book ai didi

JNI 的 Java 内存管理

转载 作者:搜寻专家 更新时间:2023-11-01 02:33:27 25 4
gpt4 key购买 nike

我有两个问题:

  1. 如果我有一个方法的 JNI 调用并且 JNI 方法泄漏内存怎么办。一旦此方法完成,JVM 垃圾收集器将能够取回该内存。听说 JVM 不管理 JNI 使用的堆空间?但是JNI使用的内存是Java进程使用的内存的一部分?

  2. 是否一定要用JNI来实现IPC?其他流行的 Java 技术是什么?是否有开源库可以在 Java 中实现共享内存?

最佳答案

  1. 否:“JNI 框架不为在 native 端执行的代码分配的非 JVM 内存资源提供任何自动垃圾收集”(Wikipedia)。
  2. 不,Java 有 sockets实际上是 ProcessBuilder。共享内存可以通过 MappedByteBuffer 实现.

关于JNI 的 Java 内存管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3879398/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com