如何避免在 javanet 中对数组中的基元进行自动装箱

How to avoid autoboxing of primitives in arrays in javonet

根据https://www.javonet.com/java-devs/guides/working-with-net-arrays-and-collections-from-java-with-javonet/中的例子,如果Java的dll正在调用return一个整数数组,Javonet将只显示一个整数数组类(不是基元)。由于我的数组很大(大约 2GB 的数组),Javonet 有没有办法不自动装箱,而是 return 原语数组?

我们已经实现了允许您选择 Javonet 是否应 return 装箱或未装箱数组的机制。它可以用于您的应用程序的整个范围或为特定操作临时设置,但请记住它的 beta 构建和选项会影响所有线程,因此如果有选择地使用,应谨慎使用。

请使用此版本: http://download.javonet.com/1.5/javonet-1.5hf15-primitivearrays-opti-jtdn.jar

随时调用原始数组模式:

Javonet.setUsePrimitiveArrays(true);

此模式影响所有基本类型:int、long、short、byte、float、double、boolean、char...要取消此模式只需设置 "false"。

一旦确认它可以提高您的性能,我们将把它包含在最终版本中并分别更新此答案。