java nio java.net.ConnectException: Connection refused: no further information 10
我用javanio写了个服务器demo,和一个clientdemo,启动服务端后,启动客户端,成功连接服务器,可以发送消息和接收消息了。然后将客户断关闭,再次发起连接时,...
我用java nio写了个服务器demo,和一个client demo,启动服务端后,启动客户端,成功连接服务器,可以发送消息和接收消息了。然后将客户断关闭,再次发起连接时,在检查channel是否连接成功时,
SocketChannel sc = (SocketChannel) key.channel();
// 测试一下,是否连接成功
if (key.isConnectable()) {
if (sc.finishConnect()) {
sc.register(selector, SelectionKey.OP_READ);
doWrite(sc);
}
}
sc.finishConnect() 这个方法报错了
java.net.ConnectException: Connection refused: no further information
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(Unknown Source)
at nio.TimeClientHandle.handleInput(TimeClientHandle.java:64)
at nio.TimeClientHandle.run(TimeClientHandle.java:114)
在第二次的连接过程中,服务端
Set<SelectionKey> selectedKeys = selector.selectedKeys();
得到的集合的长度始终为0,所以根本不能去accept()客户端
感觉就是服务端,好像一直没有收到连接请求一样。。。。
很懵逼,不知道为啥,第一次成功连接并通信,再次打开客户端就报错了。 展开
SocketChannel sc = (SocketChannel) key.channel();
// 测试一下,是否连接成功
if (key.isConnectable()) {
if (sc.finishConnect()) {
sc.register(selector, SelectionKey.OP_READ);
doWrite(sc);
}
}
sc.finishConnect() 这个方法报错了
java.net.ConnectException: Connection refused: no further information
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(Unknown Source)
at nio.TimeClientHandle.handleInput(TimeClientHandle.java:64)
at nio.TimeClientHandle.run(TimeClientHandle.java:114)
在第二次的连接过程中,服务端
Set<SelectionKey> selectedKeys = selector.selectedKeys();
得到的集合的长度始终为0,所以根本不能去accept()客户端
感觉就是服务端,好像一直没有收到连接请求一样。。。。
很懵逼,不知道为啥,第一次成功连接并通信,再次打开客户端就报错了。 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询