说明
可以用ByteBuf的maxWritableBytes()得到当前ByteBuf最多还可写入多少字节的数据,它的值等于ByteBuf的最大容量减去当前的writerIndex。
可以使用writableBytes()获得ByteBuf当前还可以写入多少字节的数据,它的值等于ByteBuf的容量减去当前的writerIndex。
示例
package com.thb;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
public class Test {
public static void main(String[] args) {
ByteBuf buf = Unpooled.buffer(3, 10);
buf.writeByte(0x68);
System.out.println("buf当前容量:" + buf.capacity());
System.out.println("buf最大容量:" + buf.maxCapacity());
System.out.println("buf当前可写入字节数:" + buf.writableBytes());
System.out.println("buf最大可以写字节数:" + buf.maxWritableBytes());
}
}
运行输出: