X

X

我不想陈述不完整的 XY 问题,所以这里是完整的情况:

X

我在 Windows 7 计算机上的 Visual Studio 中运行构建,同时使用并行构建和并行编译。禁用其中任何一个都不是一个选项。

我的问题是,偶尔会产生太多cl.exe(编译器)进程,导致整个机器变慢、UI 无响应等。

该机器有 12 个有效核心(6 个带超线程)。

我解决这个问题的方法是限制cl只有 11 个或 10 个核心可用,这样就不会让整个机器失去响应。不幸的是,我找不到办法。

我找到了通过使用应用程序的快捷方式(.lnk)来设置应用程序亲和性的方法,但这不适用于我的情况,因为cl.exe它是由 Visual Studio 内部启动的,而不是由我直接启动的。

我还找到了设置已经运行的进程的亲和力的方法,但这对我来说也没有用(如果没有其他方法,进程cl.exe会在整个构建过程中结束并生成,它们不是长期运行的进程)。

我正在寻找一种方法来做部分,但有其他方法可以解决X问题(由于运行、停止和启动太多进程而导致的无响应)也是受欢迎的解决方案。

相关内容