qq_37512015 2020-06-19 18:48 采纳率: 100%
浏览 211
已采纳

C#调用ExecuteReader不结束导致程序挂起

1.创建一个线程执行ExecuteReader,DB连接正常,前几次都能正常读出SQL数据。
2.在连续Select大数据,且多次在没读完数据的时候就Thread.Abort,然后关闭BD Connection及Reader。
3.再次调用ExecuteReader,程序挂起,大约10分钟才结束,且最后读出来错误数据。
~~~请教大神,这是什么原因?

是因为KillThread跟DB关闭顺序反了?
还是DB数据没取完导致数据堆积?
怎么解决?

  • 写回答

2条回答 默认 最新

  • threenewbee 2020-06-19 20:04
    关注

    KillThread是什么鬼
    应该调用 Thread.Abort
    线程里面在 ThreadAbortException 里面对 connection sqlcommand 关闭、清理

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?