作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
是否可以(如果可以,推荐的方法是什么)从 Go 调用 java 代码,无需为每个函数调用启动 JVM?
即,是否有任何等效于 python 的 jpype 解决方案,它允许您启动 JVM 一次,然后使用已经启动的 JVM 导入 java 类并调用它们?
最佳答案
使用cgo调用使用 JNI invocation API 创建 JVM 实例的 C 代码,并使用 JNI 接口(interface)调用 Java 代码。由于 goroutines 可以在技术上在 native 线程之间切换,你可能必须非常小心地测试,在进入和退出 Go 代码时将线程附加和分离到 JVM 和/或使用像 pthreads 这样的 native 线程库进行补充。
关于java - 如何在不为每次调用调用 JVM 的情况下从 Go 调用 java 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20477037/
我是一名优秀的程序员,十分优秀!