Bubble(13)

下面是充满机遇与挑战的

先不开NurseThread, 让Client发message,TCPSever来接,当然第一次没接到。哈哈

1.在server下判断s是否关了if(socket.isclosed).没关。忘记为了什么,把TCPClient下面的socket变为全局变量,login下的mTCPClient改回来。

2.我在Tab2下面,Tab3下面加了

BubbleMessage mm=new BubbleMessage();
		//m.setType(type);
		
		//m.setSenderNick(MoreActivity.me.getNick());
		//m.setSenderAvatar(MoreActivity.me.getAvatar());
		mm.setcommonStr("LOGIN " + " ");
	    mm.setType("BuddyChat");
		oos.writeObject(m);

情况是这样的,点击tab2能在console看到打印,tab3就没有了。继续debug,发现server停在client = serverSocket.accept(),肯定是老的socket已经被记住了

加这一段

if(client!=null&&client==oldclient){
					System.out.println("same same same");
				}else
			    {client = serverSocket.accept();
			
			    }
				
			    oldclient=client;
加完问题全都出来了,讨厌的就是这种,有问题但是从来不以该问题的形式出来。

现在报的异常是

java.io.StreamCorruptedException: invalid stream header: 7371007E

开始google,原来是stream的问题java.io.StreamCorruptedException: invalid stream header: 7371007E - 母鸡的日志 - 网易博客

serialization - java.io.StreamCorruptedException: invalid stream header: 7371007E - Stack Overflow

oos和ois要成对出现。

最大的问题就此解决。


然后在whle 循环的底部加上    client=null


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值