如题,谢啦
该方法什么意思?
还有该方法的应用场合是什么?

解决方案 »

  1.   

    我看了mina的那个image例子,来说一下,看对不对
    byte[] bytes1 = getBytes(imageResponse.getImage1());
    byte[] bytes2 = getBytes(imageResponse.getImage2());
    int capacity = bytes1.length + bytes2.length + 8;
    IoBuffer buffer = IoBuffer.allocate(capacity, false);
    这里buffer的大小就为bytes1和bytes2的大小加上8
    buffer.putInt(bytes1.length);
    buffer.put(bytes1);
    buffer.putInt(bytes2.length);
    buffer.put(bytes2);
    int 占四个字节,buffer的前四个字节即bytes1的大小,这个协议需要自己来控制的
    在decode的时候
    in.prefixedDataAvailable(4, MAX_IMAGE_SIZE)
    判断大小是否超出了设置的大小,这个例子是5MB,超出了就return false
    具体看下ImageResponseDecoder和ImageResponseEncoder应该能明白了
      

  2.   

    楼上这句"判断大小是否超出了设置的大小,这个例子是5MB,超出了就return false"是不是说反了呢