将服务器端的
 newSock=sock.Accept();
和 newSock.Connected
放在循环里
例如
  while(true)
       {
          newSock = sock.Accept();
          if(newSock.Connected)
           {
             接收和发送的代码;
            }
        }
这样你的客户端断开之后,还可以重新连接。

解决方案 »

  1.   

    我是把newSock的执行代码放到一个新的线程里面,这样要关闭这个socket的时候(newSock.Close())应该不会影响sock吧?要不要重新sock.Listen(10)一次?
      

  2.   

    不用重新listen
    关键是看你在那里开始循环,一般是在bind 和listen以后再执行上面的循环,
    这样你端口一直处于监听状态,如果有一个连接就产生一个新线程和newSock
      

  3.   

    newsock是接收的客户端socket,关闭它不会影响到服务器端的sock