是否从JNI调用分叉新进程

时间:2010-09-14 07:46:03

标签: java-native-interface

我正在尝试使用JNI从我的java程序中调用C API。有人可以告诉我,对C API的调用是否会在内部分叉一个新进程?...我需要这个因为我的并发事务会非常庞大​​,所以如果新进程被分叉,那么每个事务都会有这么多新进程。

1 个答案:

答案 0 :(得分:3)

使用JNI的优点是调用程序和被调用程序在同一进程(作业)中运行,而其他方法启动新进程(作业)。这使得JNI在启动时调用更快,资源更少。但是,由于Java应用程序在技术独立机器接口(TIMI)中运行,并且用户本机方法需要运行用户地址空间,因此最初需要一些开销来创建使用16字节地址指针而不是8字节的用户环境。在TIMI下面使用的指针。它只是意味着您使用JNI的原因应该不仅仅是基于性能。