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

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条)

报告相同问题?

悬赏问题

  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止
  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的
  • ¥15 全志H618ROM新增分区
  • ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译