JNA和JNR有什么区别

根据这里的图像
enter image description here

两个库都按照相同的原理工作。但我认为它们之间是有区别的。这有什么区别?


答案 1

JNA 使用反射来调用本机方法。

JNR在运行时只生成一次字节码,因此JNR比JNA工作得更快。在此处查看代码生成示例


答案 2

您链接的演示文稿已经给出了部分答案 - 因此请继续阅读。例如,在幻灯片 26 和 ff 上:

为什么不是JNA?

  • 预处理器常量?
  • 开箱即用的标准 API 套件
  • C 回调?
  • 性能