use*_*906 1 msbuild visual-studio-2008 parallel-builds
我在4核机器上使用MsBuild.我给下面的命令行来构建4个项目属于大VC++所得溶液(超过4个项目全部没有相互依赖).我正在使用Visual Studio 2008.
为了加快构建时间,我试图利用这些maxcpucount选项,但似乎无法正常工作.我期待每个核心将构建我在命令行提供的4个项目中的每个项目.不幸的是,我测量了建造的时间,有或没有maxcpucount选项,我有相同的确切结果.
C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe MyVCppSolution.sln
/t:ProjA;ProjB;ProjC;ProjD /m
你知道我在做错了什么吗?
就是"建立4个项目的MyVCppSolution.sln解一次"或者我应该手动运行4个进程的每个构建解决方案的单个项目多达4个正确的方式?
MSBuild可以并行项目.您的命令行调用(使用/ t)要求并行构建目标,这不完全是设计.您还必须在核心.proj文件中为并行设置一个标志
要获得你想要的东西(使用所有可用内核并行4个项目),你需要有一个"整体"proj文件来调用msbuild并将BuildInParallel参数设置为true.然后那个电话,调用你的其他项目.msbuild.exe和BuillInParallel上的/ m组合将为您提供所需的内容.
所以想:(如果你想要并行构建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>
Run Code Online (Sandbox Code Playgroud)
然后你打电话给buildall
msbuild.exe buildall.proj /m:4
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1720 次 |
| 最近记录: |