执行优先级较低的进程任务



我正在使用MSSQL 2012中的SSIS。它的Execute Process Task组件用于执行任何应用程序。

我想执行一个优先级较低的应用程序,这样它就不会使所有其他进程在运行时挂起。

在cmd.exe中,我们可以使用start /low。是否有一种方法可以在SSIS中做到这一点,而无需在批处理文件中包装应用程序执行命令?

使用执行进程任务,您可以在参数部分为use分配start/low。我想应该没问题。你在做这件事时有遇到什么问题吗?

这个链接可以帮到你

目前SSIS不提供任何为组件设置优先级的工具。您可以根据每个包的需求实现您自己的机制。

MSDN处理:

将具有同等依赖关系的低优先级任务分组到a顺序容器。将预执行事件添加到更高的优先级设置bool变量指示任务已启动的任务。添加一个while循环,告诉线程休眠一段时间(5秒?),而变量为false。创建序列容器低优先级的任务依赖于while循环的完成。需要小心避免包裹陷入僵局因为循环在等待永远不会发生的事情。

虽然不理想,但这是一种改进。如果它像预期的那样工作,你就结束了当一个线程监视时,它实际上是空闲的如果你的高优先级任务已经开始。一旦它检查了所有的序列容器监视的事物变得活跃较低优先级的任务可以开始执行。

还可以使用脚本组件来查询系统资源。

最新更新