java Socket的怪异之处
来源:互联网 发布:防水透气鞋 知乎 编辑:程序博客网 时间:2024/05/13 14:55
怪异之一:
connect(SocketAddress endpoint):这个方法,尝试连接server端,如果连接不上,就抛出IOException异常。如果连接成功了,就继续执行下一步的代码。
怪异之二:
boolean isConnected() :这个方法的结果仅仅代表这个socket曾经成功连接到了server,但并不表示现在这个时刻它和server仍保持连接状态。
有心的人会发现,即使你已经切断了server和socket之间的连接(比如server down掉了或网络中断了),但是这个函数执行的结果仍旧是true。所以,我认为这个方法并不像我们想象中的那么“管用”。
怪异之三:
考虑这样一种情况:
1.socket和server socket已经建立了连接
2.但是由于网络原因,这个时候连接中断了。大多数系统都会有一个断线重连的功能。
但是当你调试时,你可能会发现:网络恢复正常后,用这个socket重新连接serverSocket,却怎么也连不上。
在这里我的做法是:
socket=null;
//然后新建socket,而不是用原来的那个socket
socket = new Socket();
//接下来,用这个socket再去连接serverSocket,就可以成功连上了。
connect(SocketAddress endpoint):这个方法,尝试连接server端,如果连接不上,就抛出IOException异常。如果连接成功了,就继续执行下一步的代码。
怪异之二:
boolean isConnected() :这个方法的结果仅仅代表这个socket曾经成功连接到了server,但并不表示现在这个时刻它和server仍保持连接状态。
有心的人会发现,即使你已经切断了server和socket之间的连接(比如server down掉了或网络中断了),但是这个函数执行的结果仍旧是true。所以,我认为这个方法并不像我们想象中的那么“管用”。
怪异之三:
考虑这样一种情况:
1.socket和server socket已经建立了连接
2.但是由于网络原因,这个时候连接中断了。大多数系统都会有一个断线重连的功能。
但是当你调试时,你可能会发现:网络恢复正常后,用这个socket重新连接serverSocket,却怎么也连不上。
在这里我的做法是:
socket=null;
//然后新建socket,而不是用原来的那个socket
socket = new Socket();
//接下来,用这个socket再去连接serverSocket,就可以成功连上了。
- java Socket的怪异之处
- java Socket的怪异之处
- java Socket的怪异之处
- Linux socket断开连接的怪异
- tomcat 线程池配置的一点怪异之处
- 怪异的JAVA对象属性存储
- Java之Socket的TCP
- Liferay研究之廿二:怪异的updateUser(user)方法
- 理解 Java 正则表达式怪异的 // 和 ////,让您见怪不怪
- splite和 理解 Java 正则表达式怪异的 \\ 和 \\\\
- 理解 Java 正则表达式怪异的 \\ 和 \\\\,让您见怪不怪
- delphi 中使用socket和多线程时和输入法切换冲突的怪异问题
- 怪异的SQL注入
- 怪异的SQL注入
- 怪异的SQL注入
- 怪异的SQL注入
- 怪异的感觉
- 怪异的问题
- 【C语言的学习】第一回合:入门大集合
- Web中cookie操作
- retain、strong、weak、assign
- 每天学一点flash(88)打包一组xml数据,方便获取
- php入门和相关技术学习视频下载地址
- java Socket的怪异之处
- Google File System(中文翻译)
- 是在JSP页面根据SESSION进行权限判断
- javaworld上列出的十大java开发者资源
- LeetCode | Best Time to Buy and Sell Stock III
- HDU 2000 java中的char数组和排序函数的运用
- 深入浅出CChart 每日一课——第二十课 窥豹一斑,阶段性总结之毕业典礼
- 【C语言的学习】第二回合:命名规则大集合
- 精选37条强大的常用linux shell命令组合