应用情景是这样的,我用ServerSocket 在一个线程中创建了Socket 用于accept 客户端的请求,当然这个socket和本地的IP地址做了绑定,但是本地的IP地址是DHCP动态获取的,有时候会改变的。所以问题就来了,我怎样让处于阻塞状态的线程(因为accept 会阻塞线程)唤醒,然后在使用此线程让ServerSocket在变化后的IP地址上绑定,然后再等待Client端的链接?
请各位为 大侠  多多指教?

解决方案 »

  1.   

    通过第三方通讯服务端 -> 网页 <- 客户端你弄个网页,这个很简单,网页内容就是你服务器的IP地址,当你服务器IP变了,改变这个网页内容就可以了。客户端先获取网页上的IP,然后再执行socket....
      

  2.   

    可服务器 还是  在 旧有IP上监听啊,客户知道最新的IP地址也会发生Connection Refused 的问题。
      

  3.   

    那你就catch一下Connection Refused ,在catch里面再重新连
      

  4.   

    你如果是客户端IP变,在服务器端专门开人SockerServer接收客户端更改IP的通知;如果是服务器端IP变了,借助网页存放最新的IP,客户端从网页上读取最新的IP。
      

  5.   

    试过了AMinfo的方法,调试成功!