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()
](