我在C#的后台线程中执行一个Sql语句,此语句需要很长一段时间才能有结果(数据库巨大),那么在这段时间内如果要立即停止执行程序里该怎么做???
我虽然可以把这个线程abort终止,但却发现SQL语句继续执行,需要很长一段时间才能真正停止。
请教大家:如何立即停止SQL语句的执行??感觉终止线程但SQL语句还在执行中
如何cancel 或者kill 一个查询数据库的线程(Thread)? 我的现状: 要从数据库中查询数据.界面上有 run 和 cancel按钮. click the run button, It will send a SQL query to the databASE to get data. 如果时间太长,user 可以按cancel按钮,取消查询. 问题出在cancel功能上,就是怎么能杀死或者取消这个查询thread? 我的实验结果: 1. 用backgroundworker的话,由于这不是循环或者迭代操作,因此无法检查cancel属性,导致不能取消查询操作; 2. 在run 按钮的脚本里建立新的单独的线程的话, 点击run后,无法点击cancel 按钮. 3. command.cancel()方法也试过了, 不起作用. 看网上有人说不好使. 请问如何解决无法点击的问题? 如何取消这个查询的thread? 或者上面的思路不对,哪位大虾有好的方法? 已经拖了好长时间了, 不能再拖了. 多些各位