如何让socket客户端实时接收到server发来的数据? 我用while(true){ String str = cs.getMessage();}这种方式会造成战用cpu太高但如果不用while的话就只能接一次,怎么办呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 BufferedReader fromServer = new BufferedReader(new InputStreamReader(cs.getInputStream()));你的cs是Socket吧! 是啊我现在用的就是这种方式,但问题是我的server不见得啥时候就会发数据过来象你这样得到了fromServer 的stream处理完成之后,下次啥时候处理?难道是socket自动在每次收到数据后都会自动调用对fromServer 的处理方法? 对于socket来说,客户端只需要一直read()就可以啊,因为如果socke中没有数据的话,客户端就一直处于阻塞状态。一旦有了数据,客户端又自动实时的读取,所以就能够达到LZ的要求啊 client用read时,影响不影响同时使用这个socket发数据给server? 现在我遇到的新问题: 我在client和server端分别通过socket的inputStream和outputStream互发数据。 server端使用了一个TimerTask控制定时发送数据,在run中使用outputstream向client发送数据。 client端也同样使用一个TimerTask定时向server发链路维护消息,也是使用outputstream向server发数据。 但在运行时,总是server不断地发,而client只发出了第一条就停住了。client定时发的消息也没有发出去 这是怎么回事啊? 我没有使用线程啊,就是一个socket 加跳出标记,bStop = true;while(bStop){...........bStop = false;} 求中国地图mxd文档 null!=User 和 User!=null的区别 JFreeChart中如何设定自动调整的坐标轴范围? 新手问题1 急求正则表达式:不以某些字符开头,需要以某些字符结束 getItemSelectable()不懂呀 XP安装 j2sdk1.4.2 问题 Applet 无法显示的问题 java.lang.Object的equals, toString 和 hashCode三个方法和 RemoteObject的这三个方法有什么不同;为什么会有这种不同 +++++无运算结果+++++ 菜鸟问题,请高手指点 关于线程问题
BufferedReader fromServer = new BufferedReader(new InputStreamReader(cs.getInputStream()));
你的cs是Socket吧!
这是怎么回事啊?
bStop = true;
while(bStop){
...........
bStop = false;
}