使用来自JNI的GetDirectBufferAddress

使用来自JNI的GetDirectBufferAddress,第1张

使用来自JNI的GetDirectBufferAddress

我从文档中错过的是默认情况下

java.nio.ByteBuffer
实际上是使用
BIG_ENDIAN
字节顺序。这就解释了我在
LITTLE_ENDIAN
系统上看到的行为。请参阅此处的参考。

我的代码现在显示为:

image_info_bb = java.nio.ByteBuffer.allocateDirect( 5 * 4 );image_info_bb.order( java.nio.ByteOrder.LITTLE_ENDIAN );

看来,在默认情况下它始终是

BIG_ENDIAN
,并没有努力已经取得迄今提供的API
LITTLE_ENDIAN
,如bug报告解释这里(JDK-5043362(BF)NewDirectByteBuffer总是有秩序ByteOrder.BIG_ENDIAN)。


文档最近已更新,以反映以下内容:

  • JDK-8225152:发行说明:JNI NewDirectByteBuffer创建直接缓冲区java.nio.ByteOrder.BIG_ENDIAN


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5490684.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-13
下一篇2022-12-12

发表评论

登录后才能评论

评论列表(0条)

    保存