处理方法就是不要遇到啥错误都往外show,你得有能力判断到底是什么类型的错误,是应该抛错误还是不应该抛错误比如我有一段检测计算机可用串口的代码,原理就是从COM1到COM16挨个尝试着OPEN一遍
那么抛错了就代表串口不存在呗,难道还弹出16遍提示??

解决方案 »

  1.   


    我也正有此想法,但是不确定这么做会不会有什么后患。
    而且,我关闭之后,连接的客户端的网络状态就成了CLOSE_WAIT了,参考了http://www.cnblogs.com/chenrj/archive/2010/04/23/1718589.html,感觉我这个问题是不是要在关闭的时候先告诉客户端一声,确认好了再关,如果还跳出这个问题就在忽略。
    大神看这么行吗??
      

  2.   

    //死循环监听
    while (blAutoListen)
    {
              if(listener.Pending())
              {
                            client = listener.AcceptTcpClient();
                            object arrObj = client;
                            ThreadPool.QueueUserWorkItem(new WaitCallback(TCPReceive), arrObj);
                            //IPEndPoint port;
                           //port = client.Client.RemoteEndPoint as IPEndPoint;
              }
              else
              {
                           Threadp(10);
              }
     }