头痛:到底该如何终止socket连接? 这种情况是要由服务器来处理的,不然如果你的client端的网络突然断了,服务器的read一样会有问题的。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 to zfluo,那服务器该如何处理呢?它如何知道Applet关闭了连接?我在Applet的destroy()中关闭的客户端连接,不过这样好像没什么作用? “接着再进入Applet这页时,Applet这页的socket连接就也有问题了”什么问题?Applet重新连服务器,服务器开新线程处理应该没问题吧。出错的线程停掉。 你可以定义一个字段,当接收到这个字段就退出也可以定义二进制字段(总之你要确定不会和通信信息冲突就行)给你个例子:String str;DIS=new DataInputStream(socket.getInputStream());//输入流 PS=new PrintStream(socket.getOutputStream()); //输出流DataInputStream in=new DataInputStream(System.in); //键盘输入流……//socket已连接str=DIS.readLine(); //读入从对端传来的字符串 …… if(str.trim().equals("BYE"))break; //如果对端来的信息是"BYE",就退出 …… str=in.readLine(); //读取用户键盘输入的字符串if(str.trim().equals("BYE"))break; //如果是"BYE",就退出……具体处理,就看你自个的需要了 btw:上面那段处理代码,是放在一个while(true){}循环里面的…… btw:上面那段处理代码,是放在一个while(true){}循环里面的…… 服务器端会设置超时,如果超时了的话,具体的处理有很多,根据你自己的需要来选择,如果你学过C的话,可以参考一下《unix网络编程》这本书,里面有很详细的解释。 RandomAccessFile 关于equals覆盖的 菜鸟提问 请问怎样打包程序呢?? 一个问题困绕了很久了--如何根据一个Object动态地将它cast回原型呢? 在线等。。。请帮我。。 读文本文件更新数据库表时的奇怪问题! java连接sqlServer数据库出错 我在run方法里面加入一个设置守护线程的语句 为何报错 请问如何调用windows自带的程序(比如说计算器),我是新手请详细指点,愿(200)分相送。 请问如何在java程序中关闭其他程序?急!急!!急!!! 请问JAVA。SQL中包含6个类和18个接口的具体名称是什么?在线等待
我在Applet的destroy()中关闭的客户端连接,不过这样好像没什么作用?
什么问题?Applet重新连服务器,服务器开新线程处理应该没问题吧。出错的线程停掉。
也可以定义二进制字段(总之你要确定不会和通信信息冲突就行)
给你个例子:
String str;
DIS=new DataInputStream(socket.getInputStream());//输入流
PS=new PrintStream(socket.getOutputStream()); //输出流
DataInputStream in=new DataInputStream(System.in); //键盘输入流
……//socket已连接
str=DIS.readLine(); //读入从对端传来的字符串
……
if(str.trim().equals("BYE"))break; //如果对端来的信息是"BYE",就退出
……
str=in.readLine(); //读取用户键盘输入的字符串
if(str.trim().equals("BYE"))break; //如果是"BYE",就退出
……
具体处理,就看你自个的需要了
很多,根据你自己的需要来选择,如果你学过C的话,
可以参考一下《unix网络编程》这本书,里面有很详细
的解释。