Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用JNA/JNI从多个线程调用共享库何时安全?_Java_Concurrency_Native_Jna_Shared Libraries - Fatal编程技术网

Java 使用JNA/JNI从多个线程调用共享库何时安全?

Java 使用JNA/JNI从多个线程调用共享库何时安全?,java,concurrency,native,jna,shared-libraries,Java,Concurrency,Native,Jna,Shared Libraries,我已经将一些FORTRAN子例程编译成.so文件,并使用JNA从Java调用它们 从多个线程同时调用子例程(可重入)安全吗 我不认为子例程保持任何全局状态,但是JNA是否有任何要求?AFAIK JNA在多线程使用方面没有任何特定限制。至少我认为它没有,也没有显示出问题。JNA是无状态的,所以如果它是无状态的,我会感到惊讶。Um,这些编辑是为了什么?我没有意识到所有的编程语言和软件名称都必须是固定宽度的字体。Peter是正确的,JNA在调用本机函数时没有全局状态,只有本机库本身的句柄。如果要确保F

我已经将一些
FORTRAN
子例程编译成
.so
文件,并使用
JNA
Java
调用它们

从多个线程同时调用子例程(可重入)安全吗


我不认为子例程保持任何全局状态,但是
JNA
是否有任何要求?

AFAIK JNA在多线程使用方面没有任何特定限制。至少我认为它没有,也没有显示出问题。JNA是无状态的,所以如果它是无状态的,我会感到惊讶。

Um,这些编辑是为了什么?我没有意识到所有的编程语言和软件名称都必须是固定宽度的字体。Peter是正确的,JNA在调用本机函数时没有全局状态,只有本机库本身的句柄。如果要确保FORTRAN代码从不被并发调用,可以使用[
Native.synchronizedLibrary()
](