java通信:客户端用非阻塞的socketChannel 服务器使用serversocket 能否正常通信?

2025-05-06 05:42:12
推荐回答(1个)
回答1:

您好,提问者:

    首先IOException:Socket closed这个错误表示数据发送完毕后客户端或者服务器已经关闭了,也就是.close()了。一般是没有while(true)之类。

    其次java.io.EOFException这个错误是指发送的数据始终没有读到结尾,socket读写方式是以\r\n方式进行结束的,Socket有一个方法,如下代码:

shutdownInput() 
          此套接字的输入流置于“流的末尾”。
//当数据发送时,最后调用一下这个方法,已告诉ServerSocket我已经发送完毕,不要继续读了