to javahui(阶级斗争要年年讲,月月讲,天天讲。):
代码很长啊 测试分两种情况:一种情况是客户端接收到服务器端的回复信息后再关闭连接,这种情况不会出现该异常;另一种情况是客户端连续发送所有的请求,发送完后关闭连接,服务器端读取(这时读取出现异常)客户端发送的信息再进行处理。现在的问题就是:如果能在客户端关闭了socket的前提下服务器端仍然可以读取缓冲区中未读取的信息,你明白我的意思了吗?代码跟通用的服务器端代码是一样的,关键是跟客户端的配合处理
代码很长啊 测试分两种情况:一种情况是客户端接收到服务器端的回复信息后再关闭连接,这种情况不会出现该异常;另一种情况是客户端连续发送所有的请求,发送完后关闭连接,服务器端读取(这时读取出现异常)客户端发送的信息再进行处理。现在的问题就是:如果能在客户端关闭了socket的前提下服务器端仍然可以读取缓冲区中未读取的信息,你明白我的意思了吗?代码跟通用的服务器端代码是一样的,关键是跟客户端的配合处理
解决方案 »
- 关于继承的问题,小弟不解泪奔中~求各位大侠相助
- Java一个整形的数组,写一个方法,实现 最大,最小,次大,次小 ……输出
- java swing 事件触发问题
- LOMBOZ ECLIPSE中运行JSP时的配置
- servlet 显示中文问题
- POI导入公式的问题.
- 迷茫的人在寻找答案:delphi和java2我应该学习哪个?
- 请教 关于STATIC的用法
- 在一个application 的 panel(awt)中如何显示图片(.gif,.jpg...),注意:panel是AWT的.
- 请问,这个是类型的项目工程?
- 谁可以说一下和以前的IO相比NewIO是通过怎么样的方法来提高效率的
- A Question of A Java Newcomer!
建立二次握手就好了
请求-------->
<------------发送
<------------发送结束
接受结束---->
<------------断开连接
因为别的服务器相同的客户端程序难接收到信息好像是设置socket的某些属性可以使得客户端要断开连接时必须等待某种状态才能真正断开的,也就是说客户端发出了断开连接命令,但真正的连接还是连在一起的,只是客户端不再接收和发送数据而已但我就是不知道设置哪个属性
在C++下好像有set_sockopt之类的函数可以必变socket的属性的我手上没有jdk啊我就是希望有人做过,那我就不用找了,直接搬来用岂不妙哉??
int linger)
throws SocketException
Enable/disable SO_LINGER with the specified linger time in seconds. The maximum timeout value is platform specific. The setting only affects socket close.
Parameters:
on - whether or not to linger on.
linger - how to linger for, if on is true.
Throws:
SocketException - if there is an error in the underlying protocol, such as a TCP error.
IllegalArgumentException - if the linger value is negative.
第二个参数应该设什么值呢?
比方说:1表示什么,2表示什么,3表示什么之类的,你知道吗?
我试了用setSoLinger(true,10)在accept前调用了一次不行在accept后再调用一次还是不行还是抛出相同的exception