【发布时间】:2011-05-03 00:53:19
【问题描述】:
假设我有一个程序会占用处理器和/或硬盘,以至于几乎不可能在该计算机上执行任何其他操作。现在我不想杀死那个程序,因为它的作用是有用的(它是一个批处理作业,确实是 CPU 或磁盘很重,例如它可以压缩几 GB 的数据文件)但短时间内我需要做那台电脑上的其他东西。有什么方法可以让外部程序暂时冻结这个性能杀手?
这就像旧的 DOS 选项,无需实际执行多任务处理即可在程序之间切换。
假设有问题的假设程序是第 3 方产品,我没有它的源代码,也无法让它暂停。
我知道我可以更改程序的优先级,例如在 TaskManager 中,但这还不够,我想冻结它。
我正在谈论 Windows XP 作为操作系统,并希望使用 Delphi 编写解决方案。我拥有这台机器的所有权限,所以我可以以管理员身份启动某些东西,替换文件,如果有必要,我还可以安装服务。
【问题讨论】:
-
对于使用 DebugActiveProcess 的替代解决方案:stackoverflow.com/questions/11010165/…
标签: performance delphi windows-xp