取消LINQPad程序运行

时间:2014-04-28 06:52:50

标签: .net linqpad

是否可以取消我在LINQPad中运行的长时间运行的程序? 如果是这样,怎么样?

编辑:

LINQPad在显示非常大的对象时可能会长时间没有响应。然后你要么必须等待或杀死LINQPad。

在运行长时间运行的程序时,通常不会发生这种情况。

4 个答案:

答案 0 :(得分:3)

根据我的经验,LINQPad在执行查询时可能会花费大量时间的两个主要阶段:

  1. 在对数据上下文执行查询并收集数据时
  2. 检索数据并将其转换为HTML格式以供显示
  3. 当LINQPad正在执行您的查询时(上面的第1阶段),您可以使用 Shift - F5 取消查询。

    虽然LINQPad正在构建要显示的HTML,但遗憾的是我还没有找到取消查询的方法。我通常做的是要么完全杀死LINQPad(通过任务管理器或其他方式)(因为它会自动保存查询,你通常不会丢失任何工作)只是让查询运行它的过程。然后,我将Dump()次来电转换为Dump(0),以确保下次更快地获得结果。

    如果LINQPad在扩展到更深的转储级别之前采用广度优先方法,那肯定会很好。在这种情况下,按 Shift - F5 可以简单地停止扩展到它已达到的任何级别。如果您同意,那么在LINQPad's UserVoice网站上提出申请可能是一个很好的改进。

答案 1 :(得分:2)

Shift + F5 停止正在运行的程序。或者从菜单

查询 - >取消

答案 2 :(得分:2)

使用任务管理器终止工作流程,不起作用?

答案 3 :(得分:1)

正如@ Frank的回答所示,当LinqPad GUI呈现.Dump()操作的HTML输出以便在结果面板中显示时,它将无响应。

我已经在LinqPad uservoice网站(here)上创建了一个请求,以便在运行LinqPad查询时执行此步骤,该查询可以取消,或者在后台线程上处理它。

随意为此功能请求添加投票以将其推送到优先级堆栈。