本帖最后由 猫咪不吃糖 于 2013-11-1 14:15 编辑
- try
- {
- length = socketClient.Receive(arrMsgRec);
- }
- catch (SocketException ex)
- {
- ShowMsg("异常:" + ex.Message+socketClient.RemoteEndPoint.ToString());
- break;
- }
- catch (Exception ex)
- {
- ShowMsg("未知异常:" + ex.Message);
- break;
- }
复制代码 开启服务器,开启客户端连接。
然后关掉客户端,断开连接。
出现了一个情况,无限循环输出异常消息;ShowMsg("异常:" + ex.Message+socketClient.RemoteEndPoint.ToString());
这是为什么??
系统是WIN7。
用return的话是正常的。而且后面也能继续接受其他客户端连接。
补充下,try catch外层是while(true)的持续监听的循环。
我的问题是,break是跳出到哪层?仅跳出catch语句吗?跳出后接着执行try?
但我看视频也是break,就不会无限循环啊,这是为什么?win7和XP不一样?
|
|