首页 新闻 会员 周边

UdpClient 关闭连接时引起ObjectDisposedException问题,如何解决?

0
悬赏园豆:5 [待解决问题]
 1         protected void OnReceive(IAsyncResult iar)
 2         {
 3             IPEndPoint remote = null;
 4             byte[] buffer = null;
 5             try
 6             {
 7                 UdpClient udpClient = iar.AsyncState as UdpClient;
 8                 if (udpClient != null)
 9                 {
10                     buffer = udpClient.EndReceive(iar, ref remote);
11                     if (buffer.Length > 0)
12                     {
13                         //处理数据
14                     }
15                     udpClient.BeginReceive(OnReceive, udpClient);
16                 }
17             }
18             catch (ObjectDisposedException ex1)
19             {
20                 log.Error("对象资源释放ObjectDisposedException:", ex1);
21             }
22             catch (Exception ex2)
23             {
24                 log.Error("接收数据失败:", ex2);
25 
26                 this.m_Socket.Close();
27 
28                 if (this.OnError != null)
29                 {
30                     this.OnError(this, new ChangedEventArgs(this.m_Name, ex2));
31                 }
32             }
33         }

 

paaple的主页 paaple | 初学一级 | 园豆:15
提问于:2016-11-14 11:39
< >
分享
所有回答(1)
0

代码敢不敢用插入代码的方式

czd890 | 园豆:14412 (专家六级) | 2016-11-14 11:44

知道是什么原因引起的么?

支持(0) 反对(0) paaple | 园豆:15 (初学一级) | 2016-11-14 15:32
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册