关于客户端重新连接的问题 初学java,在写一个网络程序,客户端连接到服务端后,向服务端发送一条数据,然后两边都close。第二次我又 new Socket(IP,Port)的时候就没有反应了,这种情况应该怎样处理呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我只是关闭了连接上来的那个客户端的Socket,没有关闭ServerSocket 一般的服务器的等待连接是当客户端连接上了以后,就不区分谁是客户端谁是服务器了,也就是说你服务器的ServerSocket已经变成与客户端的Socket一样了。如果需要连接断开后客户端还能连接上的话,需要在服务器端实现多线程,使用while的死循环来一直等待客户端的连接。 ServerSocket ss=new ServerSocket(8899); while(true){ Socket socket=ss.accept();//启动一个线程来处理接收到客户端连接后的处理 HandlerRead handler=new HandlerRead(socket); handler.start(); } dc=new DataContainer(); mainServer ms=new mainServer(11111,dc); ms.start(); ss=new ServerSocket(12345); while(true) { s=ss.accept(); Recv recv=new Recv(s,dc); recv.start(); }我的代码是这样写的,然后再线程里关闭了s ss也关了?s.close()就行了 哥哥们,菜鸟问一个逻辑关系的问题 多个线程能监听一个端口吗? 求一点笔试题 请教:急!!!!!服务器端连接客户端出现异常 初学者的菜鸟问题。。呵呵。。 怎么做!初学! JAVA反射,field.set(obj1,obj2)obj2类型的问题 jbuilder安装问题 请问,有哪些介绍用JAVA处理图形及SWING控件的资源,资料,书籍等? eclipse 代码提示信息不显示 怎么不定义数组固定长度?以输入字符串长度为该数组长度! java map 排序问题
while(true){
Socket socket=ss.accept();
//启动一个线程来处理接收到客户端连接后的处理
HandlerRead handler=new HandlerRead(socket);
handler.start();
}
mainServer ms=new mainServer(11111,dc);
ms.start();
ss=new ServerSocket(12345);
while(true)
{
s=ss.accept();
Recv recv=new Recv(s,dc);
recv.start();
}
我的代码是这样写的,然后再线程里关闭了s
s.close()就行了