Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
正在从ASP.net页取消SQL请求_Asp.net_Ajax_Multithreading - Fatal编程技术网

正在从ASP.net页取消SQL请求

正在从ASP.net页取消SQL请求,asp.net,ajax,multithreading,Asp.net,Ajax,Multithreading,我花了一周时间试图解决这个问题。我的想法是我需要有两个按钮,“执行”和“取消”。“执行”运行一个长SQL查询。Cancel必须能够“取消”查询。问题是,当我向服务器发送两个ajax查询时,它们是按顺序完成的,因此“cancel”click handler函数不能“cancel”上一个查询(尽管我有一个可以调用Q.cancel()的查询)。我认为这与“锁定会话”有关 当单击“取消”时,我甚至无法将用户重定向到另一个网页,因为对“执行”的ajax调用在完成之前不允许执行任何其他内容 我曾尝试使用mi

我花了一周时间试图解决这个问题。我的想法是我需要有两个按钮,“执行”和“取消”。“执行”运行一个长SQL查询。Cancel必须能够“取消”查询。问题是,当我向服务器发送两个ajax查询时,它们是按顺序完成的,因此“cancel”click handler函数不能“cancel”上一个查询(尽管我有一个可以调用Q.cancel()的查询)。我认为这与“锁定会话”有关

当单击“取消”时,我甚至无法将用户重定向到另一个网页,因为对“执行”的ajax调用在完成之前不允许执行任何其他内容

我曾尝试使用microsoft的反应式扩展(rx.net)库,它可能允许我为“执行”创建另一个线程,但在这种情况下,由于我没有等待该线程完成并返回,因此无法返回查询结果


请帮忙。非常感谢除“请勿取消”之外的任何帮助。

通常,请求应在线程池中的不同线程上处理。听起来像是在使用IISExpress,或是将IIS上的线程数限制为1

除了调查IIS设置外,我们还鼓励您使用长时间运行的请求,因为它们不会占用线程。这将允许单个线程同时处理Execute和Cancel请求,尽管您必须将
CancellationToken
存储在类似会话状态的某个位置