如何暂停其他不相关的进程以允许感兴趣的进程占用 CPU?

如何暂停其他不相关的进程以允许感兴趣的进程占用 CPU?

是否有可能

  • 首先找出运行感兴趣的流程所需的流程,以及
  • 然后挂起所有其他不相关的进程,让感兴趣的进程尽可能多地使用CPU
  • 当感兴趣的进程完成运行时,恢复挂起的进程?

例如,感兴趣的进程是 djview

谢谢。

答案1

如果存在永久连接,这应该是可能的(至少在许多情况下)。然后您可以检查/proc/PID/fd套接字和 FIFO(如果使用常规文件则更困难)并找到属于它们的进程。

但我不会完全阻止其他进程;这看起来很危险。如果您犯了错误,可能会导致死锁(并可能导致其他问题)。

我建议转储所有进程的 CPU 和 I/O 优先级,调整它们(renice, ionice),然后恢复它们。这可能会使主进程损失 10% 的性能,但这是安全的。

相关内容