原因很可能是server 端的程序并不知道你已短开连接了。
你并没有server的代码,一般写server会设置一个结束标志符(自己定义的,如:Quit);
客户端短开后,server 仍在监听着;即使重起,server也还仍在监听

解决方案 »

  1.   

    关注,我也遇到类似问题。一楼的说是server还在监听,那怎么样才能关掉!!!
      

  2.   

    不管如何,为什么 isClosed() 结果为true, isConnected()结果也是true???
      

  3.   

    问题我已经找到,相当诡异。
    isConnected()在本地socket成功建立后,无论是否连接到server,都应该返回true。
    至于我的server上为什么总是显示client没有断开的错误已经解决,是我程序的问题。
    根本原因我不知道。只是,原来在执行一系列socket close()操作前,控制线程sleep了5秒。
    就是这个sleep,结果之后socket close了,server还显示client仍然连接。去掉sleep,问题就没了。