问题标签 [build-time]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
10 回答
4283 浏览

visual-studio-2008 - Visual Studio 9 解决方案中的项目数量是否会影响解决方案加载和构建时间?

我对解决方案加载时间和构建时间特别感兴趣——更少的解决方案是否意味着更好的性能?

请注意,我指的不是构建应用程序的性能。

处理较少数量的项目时,加载时间和构建时间是否更有效?

作为指导,我们的 Visual Studio 解决方案中有 50-60 个项目。

0 投票
10 回答
7830 浏览

c++ - GCC/Make 构建时间优化

我们有使用 gcc 和制作文件的项目。项目还包含一个大子项目 (SDK) 和许多使用该 SDK 和一些共享框架的相对较小的子项目。

我们使用预编译的头文件,但这仅有助于重新编译更快。

是否有任何已知的技术和工具可以帮助进行构建时优化?或者,也许你知道一些关于这个或相关主题的文章/资源?

0 投票
2 回答
992 浏览

c++ - 转发 typedef 声明、对构建时间的影响和命名约定

我很好奇我的 typedef 方法对我的构建的影响。

请考虑以下示例。

每当我遇到上述情况时,都会将 typedef 驱动到头文件中,因此需要我将其 #include 到头文件中。我担心缺少前向声明可能会导致更长的构建时间。

根据这篇文章的评论:

C++ 中 typedef 的前向声明

我可以转发声明类,typedef 引用或指针,然后在 .cpp 文件中 #include。这应该允许更快的构建时间。我对此的结论是否正确?

如果是这样,我最终会得到这样的 typedef:

这对我来说看起来不是很干净的代码,我想我已经阅读了反对这个的文章/帖子(不一定是 SO)。

你觉得这可以接受吗?更好的选择?


更新:使用 Michael Burr 的回答,我只能解决指针和引用的情况。但是,在我的函数中尝试使用 sizeof() 时遇到了问题。例如,假设该类具有以下功能:

或者,这会起作用。

我正在使用 Microsoft Visual C++ 6.0。这是编译器的错误还是通常违反标准?

在有错误的示例中,请注意 sizeof(SomeClass) 是正在被 typedef 的原始类,而不是在 Foo 中创建的新 typedef 类型。我很惊讶通过在 typedef 中进行前向声明限制了我对作为 typedef 的类执行任何操作的能力。


跟进:刚刚使用 XCode 编译器对其进行了测试,我相信我的 sizeof 问题是 Visual C++ 6.0 编译器问题。我猜 XCode 编译器可能是正确的,但我目前没有其他尝试。因此,虽然这提供了信息,但我个人对我目前的任务不走运,因为最佳答案不适用于我的情况。

0 投票
4 回答
124 浏览

visual-studio - 如何确定构建在 Visual Studio 2005 中运行缓慢的原因?

我想知道是否有可能知道为什么 Visual Studio 2005 (MSBuild) 构建需要很长时间才能构建项目。

突然间,我们在某些计算机上获得了 7 分钟的构建时间,而其他计算机则需要更少的时间,例如 4 分钟。

所以我认为我需要确定对项目所做的更改并导致更长的构建时间。

关于我如何做到这一点的任何想法?

0 投票
3 回答
4728 浏览

visual-studio - 有没有办法在 Visual Studio 中显示整个解决方案的构建时间?

我知道有一种方法可以显示 Visual Studio 解决方案中包含的每个项目的构建时间。但我正在寻找的是构建整个解决方案所花费的总时间,从我单击构建的那一刻到完成的那一刻。

有没有办法做到这一点?运行 Visual Studio 2008。

0 投票
4 回答
544 浏览

language-agnostic - 安装是在运行时发生还是在编译时发生?

根据适合维基百科参考的已出版书籍:

安装是在运行时发生还是在编译时发生?

“在安装或复制程序之后或期间检测到“运行时错误”—— 维基百科

0 投票
2 回答
4047 浏览

c++ - “变量跟踪”正在消耗我的编译时间!

我有一个自动生成的文件,看起来像这样......

当我像这样构建它时,构建时间是巨大的。如果我使用我的脚本将所有函数自动内联到它们各自的案例中,构建时间就会减少一半。GCC 4.5.0 说,当我使用 -ftime-report 时,“变量跟踪”占用了大约 50% 的构建时间。这是什么意思?我怎样才能加快编译速度,同时仍然保持从交换机中提取功能的卓越缓存局部性?

编辑:有趣的是,构建时间仅在调试构建时爆炸,根据整个项目的以下分析信息(这不仅仅是有问题的文件,但仍然是一个很好的指标;有问题的文件花费的时间最多建立):

  • 调试:8 分 50 秒
  • 释放:4分25秒

如果你很好奇,这里有一些示例 do_func,上下文已删除。如您所见,我稍微简化了问题定义,只显示相关部分。如果您想知道,所有 self->func 调用都是对 boost::signal 的调用。

0 投票
1 回答
508 浏览

silverlight - 在 VS2010 上构建 SL4 + RIAServices 应用程序花费的时间太长

有一个安装了 VS2010 Premium 的 Win7 盒子。构建桌面应用程序工作得很好。但是我们用 15 个 SL4 和 21 个桌面项目得到了这个解决方案……构建它的 SL 部分需要太长时间。这很烦人,并且鼓励放弃 TDD,因为每次我运行测试时,msbuild 需要大约 3 秒才能发现没有任何变化,应该跳过项目。这些项目非常小,没有什么花哨的东西,在我们从 VS2008+SL3 切换之前,我们没有任何问题。我听说人们普遍抱怨 VS2010 的速度比比皆是,但对于 SL4 的构建时间却没有。有没有人遇到同样的问题,有什么解决方法吗?

0 投票
1 回答
260 浏览

visual-studio - 为什么我们的 Visual Studio 构建速度如此之慢,但只在一台机器上?

我们最近购买了两台具有相同规格/硬件的新构建机器。据我了解,相同或非常相似的磁盘映像被用来加载到那台机器上。但是,我相信后来两者都安装了 Visual Studio 2008。我们已经在两台机器上开始构建相同的源代码,但是其中一台机器总是在大约 40% 的时间内完成另一台机器。我们已经监控了这些机器,以确保其中没有任何其他进程占用时间,但实际上没有。

您对性能上的差异有什么想法吗?是否存在会导致额外开销的特定 Visual Studio 设置?还是它最像系统设置?

0 投票
4 回答
357 浏览

java - 如何优化此代码?

我当前的项目让我们在 Java 中使用 TreeSet 和 TreeMap,输入数组包含从文本文件中读取的 10514 个 Song 元素。每首歌曲都包含一个艺术家、标题和歌词字段。该项目的目的是使用集合和地图对歌词进行快速搜索。

首先,我遍历输入的 Song 数组,访问歌词字段并创建一个 Scanner 对象以使用以下代码遍历歌词: commonWords是不应该是键的单词的 TreeSet,并且lyricWords是单词到 Songs 的整体映射。

为了构建歌曲集,我使用以下代码:

现在,由于 buildSongSet 是从循环内部调用的,因此创建地图需要 N^2 次执行。当输入数组是 4 首歌曲时,搜索运行非常快,但是当使用 10514 个元素的完整数组时,在具有 6 GiB RAM 的 2.4GHz 机器上构建地图可能需要 15+ 分钟。我该怎么做才能使这段代码更有效率?不幸的是,减少输入数据不是一种选择。