win2k8 计划任务有啥办法可以有正常的优先级 IO 吗?
Posted
技术标签:
【中文标题】win2k8 计划任务有啥办法可以有正常的优先级 IO 吗?【英文标题】:Is there any way for a win2k8 scheduled task to have normal priority IO?win2k8 计划任务有什么办法可以有正常的优先级 IO 吗? 【发布时间】:2011-01-26 11:53:52 【问题描述】:我有一个非常 IO 密集型的计划任务(删除数十万个文件)。由于磁盘空间的原因,这项工作必须相当快地执行。在 win2k8 上,定时任务的 IO 优先级总是很低。提高进程的优先级并没有改变 IO 优先级。有没有办法让计划任务具有正常的 IO 优先级?
【问题讨论】:
【参考方案1】:-
创建任务
右键单击任务并“导出”它
编辑刚刚导出的 task.xml 文件
你会发现一行类似于
<Priority>7</Priority>
将该值更改为正常优先级(4-6 之间)。潜在值表:TaskSettings.Priority property
值 4 将具有与交互式进程相同的 I/O 和内存优先级。值 5 和 6 的内存优先级较低
在任务计划程序中,删除您最初创建的任务
在任务计划程序的操作区域中,从 XML 文件导入任务
【讨论】:
它适用于从计划任务创建的进程,但衍生进程(由该进程创建,例如使用“cmd \c”)不会获得相同的优先级。如何将它也带到生成的进程中? 4 等于“标准”窗口优先级。 5 具有低内存优先级(进程资源管理器提示)。 在 2008R2 中,这对于 I/O 和 CPU 是正确的,但对于内存优先级(也是 @CoolCmd)似乎并不完全正确:在我的测试中,如果我将计划任务优先级设置为 4 ,它的进程(后代)获得内存优先级 4。普通交互式任务的内存优先级为 5,普通的计划任务(计划任务优先级 7)的内存优先级为 3(全部从 Process Explorer 中读取)。所以这仍然是中间的一步。但除此之外:谢谢!【参考方案2】:也许是use IO Priority to set the process's priority?
另外,请参阅Windows Vista: Kernel Changes - I/O, I/O, It's off to work I go...
I/O 完成端口改进[…] I/O 可扩展性改进[…] I/O 取消支持[…] I/O 优先级[…] I/O 带宽预留
【讨论】:
以上是关于win2k8 计划任务有啥办法可以有正常的优先级 IO 吗?的主要内容,如果未能解决你的问题,请参考以下文章
Quartz.NET 与 Windows 计划任务。他们有啥不同?
Linux下怎么建立任务计划,shell文件是做啥的?以啥为后缀,前两者之间有啥关系
windows任务计划程序是怎么回事,有啥用途,该怎么设置??
Linux下怎么建立任务计划,shell文件是做啥的?以啥为后缀,前两者之间有啥关系