首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Visual Studio 2010 (msbuild?)构建速度更快?

为什么Visual Studio 2010 (msbuild?)构建速度更快?
EN

Stack Overflow用户
提问于 2011-07-16 11:15:56
回答 3查看 2.1K关注 0票数 4

当在Visual Studio2010中构建包含多个项目的大型解决方案时,Windows7资源监视器通常会显示devenv.exe没有响应,但平均CPU读取的数值较低,如下图所示:

这是在Windows7 x64上,使用AMD Phenom II 920四核CPU,8 GB内存。Visual Studio没有响应,但它似乎几乎没有使用任何CPU资源。

当我尝试使用msbuild.exe和开关"/maxcpucount:4“运行构建时,平均cpu值仍然很低,并且RHS图永远不会显示高于5-10%的值。

为什么Visual Studio2010(或msbuild)在构建过程中似乎没有利用CPU?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-16 11:28:15

构建一个项目可能会涉及大量的磁盘I/O,这可能会花费相当多的时间,但不会产生太多的CPU负载。

至于为什么它显示为无响应,我的猜测是,构建过程出于某种原因(例如,某人在实现它方面做得很糟糕)阻止应用程序响应来自操作系统的请求。一个应用程序不需要达到100%的CPU使用率才被认为是“没有响应”,它只需要让它的主线程卡在某个地方,阻止它及时响应操作系统。

票数 5
EN

Stack Overflow用户

发布于 2011-10-31 11:54:19

似乎MSBuild不喜欢并行构建多个项目,只能在一个项目中并行构建多个文件。

票数 2
EN

Stack Overflow用户

发布于 2011-07-16 12:03:52

为什么它很慢,而且不能像预期的那样工作?嗯,因为它是使用尖端技术从头开始构建的。怪不得!

(怒气冲冲地说:VS2010是一个巨大的倒退。VS2008更稳定,响应性更好(也很有效),但先把个人观点放在一边)

利用多核优势的两种解决方法:

  • 将MSBuild设置为here概述的外部工具,并为其分配快捷方式(如Ctrl+Shft+B)以便于快速访问。
  • MSBuild任务的BuildInParallel属性设置为true
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6715061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档