MSBuild может проектов параллельно. Ваш вызов из командной строки (с использованием / t) запрашивает target для параллельного построения, что не совсем так. Вы также должны установить флаг в основном файле .proj для параллельного
Чтобы получить то, что вы хотите (4 элемента параллельно, используя все доступные ядра), вам необходим «общий» proj-файл, который вызывает msbuild и для параметра BuildInParallel установлено значение true. Тогда этот звонок, называет ваши другие проекты. Комбинация / m в msbuild.exe и BuillInParallel даст вам то, что вы хотите.
Так что хотелось бы: (Если вы хотите, чтобы ProjA, B, C, D были встроены параллельно)
Файл buildall.proj
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion=”3.5”>
<Target Name="default">
<MSBuild Projects="proja.proj, projb.proj, probc.proj,prod.proj" BuildInParallel="true"/>
</Target>
</Project>
Тогда вы бы позвонили в buildall с
msbuild.exe buildall.proj /m:4