当服务器端接收到一个客户端连接后,并于此客户端正常通讯一段时间。当此客户端正常退出(只:客户端执行了 socket.shutdown 和socket.close)或是客户端电脑突然关机或程序异常退出。那么,此时服务器端应该如何释放这个连接?????

解决方案 »

  1.   

    欢迎各界.Net初学&高手们加入Q群12757054(要经常在线)
    希望大家的问题能够及时的得到解决.
      

  2.   

    我使用的是异步服务器端。我发现如果客户端突然断开后,会在异步接收回调函数中报错。错误为“对方强制关闭了一个现有的连接”,有时在报错后,本程序的CPU占用率就猛增到90多。此时我应该如何在catch中关闭这个连接(异步接收回调函数里)????
      

  3.   

    cpu占用率低,有可能因为对方断开后你本地的接收函数一直循环,退不出来。如果你是阻塞式receive,如果直接返回0字节,我猜想是断开了。但是socket认为connected属性还是true,你就自己close一下好了。