|
|
1
7
如果你 只有 Windows、系统内部需要它吗 Process Monitor 应该向你展示你需要知道的一切。您可以选择流程,然后查看每个操作,并获得文件操作的摘要。 |
|
|
2
1
一个老掉牙的好东西:创建一个RAM磁盘并从那里编译文件。 |
|
3
1
当我仍然使用Windows时,我曾经通过将所有生成输出写入一个单独的分区(如果大小可能为3GB),并通过一个计划任务定期在夜间格式化这些分区,从而在加速构建的过程中获得良好的效果。这只是构建输出,所以它偶尔被单方压扁也没关系。 但老实说,自从迁移到Linux之后,磁盘碎片就不再是我担心的事情了。 在Linux上至少尝试一次构建的另一个原因是,您可以运行 strace 打开 )查看生成所接触的文件。 |
|
|
4
0
我曾经在Windows上使用Ant构建了一个巨大的JavaWebApp(JSP前端),这需要3分钟。我擦了擦我的电脑,安装了Linux,突然间,构建过程耗时18秒。这些都是真实的数字,尽管只有3岁左右。我只能假设Java更喜欢Linux内存管理和线程模型,而不是Windows等效模型,因为根据我的经验(尤其是Eclipse),所有Java程序似乎在Linux下运行得更好。在对未更改的文件(即可执行文件和库)进行大量读取时,Linux似乎可以更好地防止从磁盘进行额外读取。这可能是磁盘缓存或文件系统的属性,我不确定是哪个。 Java的一大优点是它是跨平台的,因此建立一个基于Linux的构建服务器实际上是您的一个选择。作为Linux的传播者,我当然更愿意看到您将开发环境切换到Linux,但我知道很多人不想这样做(或者出于实际原因不能这样做)。 如果您甚至不愿意设置Linux构建服务器以查看它是否运行得更快,您至少可以尝试整理Windows计算机的硬盘驱动器。这对我的工作计算机上的C++构建有很大的不同。尝试 JkDefrag ,这似乎比Windows附带的碎片整理程序好得多。 编辑 当前位置我认为我得到了否决票,因为我的回答没有回答所问的确切问题。然而,StackOverflow的传统是帮助人们解决他们真正的问题,而不仅仅是治疗症状。我不是那种每个问题的答案都是“使用linux”的人。然而,在这个例子中,我有非常真实的、测量过的性能增益,这正是OP询问的情况,因此我认为值得分享我的经验。 |
|
5
0
|