mina长数据无法接收,请问如何实现的

 我来答
呼碧菡0iK
2017-03-06 · TA获得超过123个赞
知道小有建树答主
回答量:274
采纳率:0%
帮助的人:293万
展开全部
throws Exception {
final int packHeadLength = 8;
// 先获取上次的处理上下文,其中可能有未处理完的数据
Context ctx = getContext(session);
// 先把当前buffer中的数据追加到Context的buffer当中
ctx.append(in);
// 把position指向0位置,把limit指向原来的position位置
IoBuffer buf = ctx.getBuffer();
buf.flip();
System.out.println("buf.remaining()--------" + buf.remaining());
// 然后按数据包的协议进行读取
while (buf.remaining() >= packHeadLength) {
buf.mark();
// 读取消息头部分
int length = buf.getInt();
System.out.println("length==" + length);

// 检查读取是否正常,不正常的话清空buffer
if (length < 0 || length > m
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式