JDK中bytebuffer缺点:
1、final byte[] hb 这是其中用于存储数据的声明,也就是长度是固定不变的,一旦分配好就不能动态的扩容和收缩,如果bytebuffer的空间不足,只有一种解决方法,那就是创建一个全新的bytebuffer对象,然后再将之前的bytebuffer对象拷贝到此,这一切的操作都需要人工进行。
2、它只使用了一个指针Position来标识位置,在进行读写操作转化时,需要调用flip()方法。
netty中bytebuffer优点:
1、存储字节的数组是动态的,其最大值默认为Interger.max_value,这里的动态性体现在write方法中,当期容量不足时,会自动扩容。
2、读写索引是完全分开的。
netty中的byteBuf和jdk中的bytebuffer比较
最新推荐文章于 2022-05-04 23:19:38 发布