当前位置: 代码迷 >> C# >> 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。求解决啊该如何解决
  详细解决方案

由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。求解决啊该如何解决

热度:92   发布时间:2016-05-05 04:54:31.0
由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。急求解决啊!
System.Net.Sockets.SocketException: 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。


[SocketException (0x2747): 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。]
   System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress) +5327494
   System.Net.Sockets.Socket.InternalBind(EndPoint localEP) +99
   System.Net.Sockets.Socket.BeginConnectEx(EndPoint remoteEP, Boolean flowContext, AsyncCallback callback, Object state) +207
   System.Net.Sockets.Socket.BeginConnect(EndPoint remoteEP, AsyncCallback callback, Object state) +125
   MySql.Data.Common.StreamCreator.CreateSocketStream(IPAddress ip, Boolean unix) +168
   MySql.Data.Common.StreamCreator.GetStream(UInt32 timeout) +389
   MySql.Data.MySqlClient.NativeDriver.Open() +219

这种东西我都关闭了.  为什么一会就又出现了.  
SMTPClient smtpcMail = new SMTPClient();
smtpcMail.Close();

现在解决只能重启服务器了.  
------解决思路----------------------
哦,类本身没有问题
返回dataset的方法使用了using

问题是如果你使用ExecuteReader方法
那么你需要手动释放连接
  相关解决方案