3
对不起,这可能是一个基本问题。 JNA直接映射和接口映射有什么区别?JNA直接vs接口映射?
是我的理解是否正确:
直接映射:直接使用库对象(像Java静态主)
接口映射:创建intance的库对象。
在此先感谢!
对不起,这可能是一个基本问题。 JNA直接映射和接口映射有什么区别?JNA直接vs接口映射?
是我的理解是否正确:
直接映射:直接使用库对象(像Java静态主)
接口映射:创建intance的库对象。
在此先感谢!
直接映射直接将您的Java方法(用native
修饰符声明)绑定到试图按原样使用调用堆栈的本机代码。如果限制函数参数并将值返回原始类型(直接映射最有效)(Pointer
类型可能被认为是原始类型)。
接口映射使用Proxy
并将Java函数签名动态地转换为通用本机入口点,并带有一系列必须随后被转换为本地原语的参数列表。它更加灵活w/r/t将Java类型转换为本地类型,但是由于参数的运行时转换,速度会更慢。