Многопроцессорные построения
Многопроцессорные построения позволяют создавать одновременно несколько проектов на компьютерах с несколькими ЦП. Например, если в компьютере имеется два ЦП, с помощью данной функции можно выполнять построение двух проектов одновременно.
Для оптимизации процесса построения в Visual Studio максимальное число параллельных построений автоматически задается равным числу процессоров компьютера. Чтобы изменить этот параметр, измените значение свойства Максимальное число параллельных построений проектов на странице свойств Построение и запуск в диалоговом окне Параметры. Дополнительные сведения см. в разделе Практическое руководство. Задание числа параллельных построений для многопроцессорных построений.
Выполнение многопроцессорных построений
Многопроцессорные построения можно выполнить из среды IDE или командной строки. Для построения из командной строки используйте команду MSBuild или DEVENV. Задачи, в которых демонстрируются эти принципы, см. в разделе:
Выходные данные многопроцессорного построения
Когда в системе проектов выполняются многопроцессорные построения, каждой конфигурации проекта, входящей в построение, присваивается номер, за которым следует правая угловая скобка. Это обозначение указывается перед каждым сообщением о состоянии для каждого этапа построения.
В следующем примере показаны выходные данные, полученные в результате многопроцессорного построения:
1>------ Build started: Project: ConsoleApp2, Configuration: Debug Win32 ------
2>------ Build started: Project: ConsoleApp1, Configuration: Debug Win32 ------
1>Compiling...
2>Compiling...
1>stdafx.cpp
2>stdafx.cpp
2>Compiling...
1>Compiling...
2>AssemblyInfo.cpp
1>AssemblyInfo.cpp
1>ConsoleApp2.cpp
2>ConsoleApp1.cpp
2>Generating Code...
1>Generating Code...
1>Compiling resources...
2>Compiling resources...
2>Linking...
1>Linking...
2>Build log was saved at "file://d:\Documents and Settings\username\My Documents\Visual Studio\Projects\Demo\ConsoleApp1\Debug\BuildLog.htm"
2>ConsoleApp1 - 0 error(s), 0 warning(s)
2>
1>Build log was saved at "file://d:\Documents and Settings\username\My Documents\Visual Studio\Projects\Demo\ConsoleApp2\Debug\BuildLog.htm"
1>ConsoleApp2 - 0 error(s), 0 warning(s)
1>
---------------------- Done ----------------------
Build: 2 succeeded, 0 failed, 0 up-to-date, 0 skipped
Выходные данные многопроцессорного построения показывают, что этапы построения для нескольких проектов могут осуществляться одновременно. Эти многопроцессорные построения отличаются от однопроцессорных, при которых процессы построения для других проектов не начинаются, пока не завершится процесс построения текущего проекта.
В следующем примере показаны выходные данные, полученные в результате однопроцессорного построения:
------ Build started: Project: ConsoleApp1, Configuration: Debug Win32 ------
Compiling...
stdafx.cpp
Compiling...
AssemblyInfo.cpp
ConsoleApp1.cpp
Generating Code...
Compiling resources...
Linking...
Build log was saved at "file://d:\Documents and Settings\username\My Documents\Visual Studio\Projects\Demo\ConsoleApp1\Debug\BuildLog.htm"
ConsoleApp1 - 0 error(s), 0 warning(s)
------ Build started: Project: ConsoleApp2, Configuration: Debug Win32 ------
Compiling...
stdafx.cpp
Compiling...
AssemblyInfo.cpp
ConsoleApp2.cpp
Generating Code...
Compiling resources...
Linking...
Build log was saved at "file://d:\Documents and Settings\username\My Documents\Visual Studio\Projects\Demo\ConsoleApp2\Debug\BuildLog.htm"
ConsoleApp2 - 0 error(s), 0 warning(s)
---------------------- Done ----------------------
Build: 2 succeeded, 0 failed, 0 up-to-date, 0 skipped