如题。
在redhat下 客户端在短时间内多次连接到服务端
在多次new socket(),socket.close()之后客户端会出现Address already in use这个异常
求大神给个解决方法。 socketRed Hat多次连接

解决方案 »

  1.   

    判断一下:isClosed() 或者是 isClosed() 可不可以?没有试过楼主说的那种场景,但是close()可能是需要花时间的,TCP协议设计的时候,close的过程,客户端就会等待2MSL(max segment lifetime),然后才是彻底关闭,楼主的这种情况看起来像是关闭之后,客户端的socket又尝试往之前socket绑定的端口上绑定。
    试一下修改redhat的网络设定:编辑/etc/sysctl.conf,添加:net.ipv4.tcp_tw_reuse = 1,行/sbin/sysctl -p生效
      

  2.   

    第二次连接的时候,上一次socket未关闭,适当加点延迟