日期:2014-05-18  浏览次数:20913 次

求助“向信号量添加给定计数将导致其超出它的最大计数”的产生原因
先描述下产生这个错误的背景:
  我用的是Mysql数据库,使用Mysql.data组件从C#代码访问数据库,我建立一个简单的窗体显示查询的数据,每次调试结束后我关闭窗体都会弹出这个错误,下面是错误的详细信息,有没有高人帮我分析下这个错误的产生原因?
  PS:我已经去Google过了,这方面的信息好少,求高人解答。


未处理 System.Threading.SemaphoreFullException
  Message="向信号量添加给定计数将导致其超出它的最大计数。"
  Source="System"
  StackTrace:
  在 System.Threading.Semaphore.Release(Int32 releaseCount)
  在 System.Threading.Semaphore.Release()
  在 MySql.Data.MySqlClient.MySqlPool.RemoveConnection(Driver driver)
  在 MySql.Data.MySqlClient.MySqlPoolManager.RemoveConnection(Driver driver)
  在 MySql.Data.MySqlClient.Driver.Dispose(Boolean disposing)
  在 MySql.Data.MySqlClient.NativeDriver.Dispose(Boolean disposing)
  在 MySql.Data.MySqlClient.Driver.Close()
  在 MySql.Data.MySqlClient.NativeDriver.Finalize()


------解决方案--------------------
信号量Semaphore只有增加没有减少
------解决方案--------------------
探讨
信号量Semaphore只有增加没有减少

------解决方案--------------------
release~