【问题标题】:Multiproc builds in VS2008Multiproc 在 VS2008 中构建
【发布时间】:2009-05-07 16:46:20
【问题描述】:

我记得在某处读过关于 VS2008 中的 multiproc 构建的文章,只是我现在找不到这篇文章。有谁知道如何打开它,或者即使有可能?

【问题讨论】:

    标签: visual-studio-2008 build-process multicore


    【解决方案1】:

    在 VS2008 中有两种方法可以并行化构建。

    首先是并行运行多个项目构建。设置在Tools->Options->Projects and Solutions->Build and Run,叫做“Maximum number of parallel project builds”。请注意,每个项目一次只能构建一个文件。

    第二种是在单个项目中一次编译多个文件。对于 C++,这是通过设置 /MP compiler flag 来完成的。请注意,此功能与预编译标头的交互相当奇怪,您必须跳过一些环节才能将两者结合起来。

    【讨论】:

    • @Ben:您能否详细说明“与预编译头文件的交互相当奇怪”?我在我们的源代码上尝试了 /MP,编译器间歇性地因权限错误而失败,大概是因为并行进程相互干扰。调整我的预编译头设置可能会有所帮助,还是这无关?谢谢...
    • 我在这里谈论 /MP 的一些其他问题:stackoverflow.com/questions/230298
    • @Richie:我们发现 /MP 构建会因预编译标头的项目级设置而严重失败。如果您为 project 设置 /Yu,并​​在 stdafx.cpp 上设置 /Yc,它似乎可以正常工作。
    【解决方案2】:

    我怀疑您是在询问新的(针对 VS 2008)多进程 VC++ 构建功能。见this

    /MP 选项可以减少总 是时候编译源文件了 命令行。 /MP 选项 导致编译器创建一个或 更多的自身副本,每一个都在一个 单独的过程。然后这些副本 同时编译源码 文件。因此,总时间 构建源文件可以 显着减少。

    此功能存在于旧版本的 VC++ 中,但未记录在案。这不是我们已经有一段时间的多项目建设。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-19
      • 1970-01-01
      • 2012-06-28
      • 1970-01-01
      相关资源
      最近更新 更多