本帖最后由 spiderman 于 2013-11-8 21:36 编辑
为了更好的表达我的问题,我将全部代码复制如上。同时为了发现异常发生的位置,我将服务端的代码分别进行了try.我的问题是:
1.用户在客户端进行了ctrl+c操作,按照毕老师视频里的展示,当不判断返回为null的情况下,则会在服务端提示null尝试登陆两次失败,但是我的实际演示情况是——有时会像毕老师演示的结果,有时则会在服务端socket输入流进行readLine()操作时会报异常,也就是说,不一定会发生什么情况,随即的。为什么会发生这种情况呢?(PS:我用的是jdk1.7,会不会跟我的jdk版本有关系?)
2.还是1的问题,按照我的正常理解,当客户端把socket资源关闭了以后,服务端再读取socket的输入流理所当然的会报异常,因为数据源已经关闭了,为什么在毕老师的视频里还会返回null呢?
|