黑马程序员技术交流社区

标题: 关于网络问题 [打印本页]

作者: 郑云斌    时间: 2014-5-9 09:49
标题: 关于网络问题
代码:
public void run() {
        while (true) {
                try {
                        String tmp = null;                                       
                        BufferedReader is = new BufferedReader(                                                       
                                                                        new InputStreamReader(in));                                       
                        tmp = is.readLine(); 等待阅读客户数据(在此阻塞)                                               
                        if (reset == 0) {  当第一次接收客户ID信息开启二个子线程                                                       
                        new Thread(new ReadInfo(tmp)).start();     
                        1: 读ID文本长度,当大于某值发送数据                                                       
                        new Thread(new TimingThread()).start();   
                        2: 定时器,当reset ++等于某值关闭连接                                               
                        }
                        reset = 1;当有数据时reset ++为1                                        //send("ok\n");
                        问题在此:如果开启发送则reset 得到预期,但要接收到需求数据会在第下一次接收数据时才会发送子线程1得到的数据!
                        也就是要等到心跳包再次发来客户端才能获取.
                        如果不用此发送(不需要发送)则reset 无效.也就是说reset 仍在reset ++值,不复位到1.请大神赐教,谢谢!!!                               
                } catch (Exception e) {                       
                }                       
        }
}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2