Я не хочу заявлять о неполной проблеме XY, поэтому вот полная ситуация:

Икс

Я запускаю сборки в Visual Studio на моем компьютере с Windows 7, используя как параллельные сборки, так и параллельную компиляцию. Отключение любого из них не вариант.

Моя проблема в том, что иногда это порождает так много cl.exe (компилятор), что вся машина тормозит, пользовательский интерфейс перестает отвечать на запросы и т.д.

Машина имеет 12 эффективных сердечников (6 с гиперпоточностью).

Y

Моя идея решить эту проблему состоит в том, чтобы ограничить cl только 11 или 10 доступными ядрами, чтобы он не мог отключить всю машину. К сожалению, я не смог найти способ сделать это.

Я нашел способы установить сходство приложений с помощью ярлыка (.lnk) для приложения, но это не применимо в моей ситуации, потому что cl.exe запускается Visual Studio внутри, а не напрямую мной.

Я также нашел способы установки соответствия процесса, который уже запущен, но для меня это тоже бесполезно (если ничего другого, процессы cl.exe заканчиваются и порождаются во время сборки, они не долго выполняются),

Я ищу способ выполнить часть Y , но альтернативные способы решения проблемы X (безответственность, вызванная слишком большим количеством запущенных, остановленных и запущенных процессов) также являются желанными решениями.

0