Stack Overflow 上的一个问题的答案 (见下文)让我想到了一个很棒的小软件,它对世界各地的编码人员来说都是无价的。
我在想象 RAM 驱动器软件,但有一个关键的区别 - 它会镜像我硬盘驱动器上的真实文件夹。更具体地说 - 包含我当前正在处理的项目的文件夹。这样,任何构建几乎都是瞬时的(或者至少快几个数量级)。RAM 驱动器将仅使用空闲资源在后台将其内容与硬盘驱动器同步。
快速的谷歌搜索什么也没发现,但也许我只是不知道如何谷歌。也许有人知道这样的软件?最好是免费的,但合理的费用也可以。
补充:已经提出了一些我一开始就放弃的解决方案。它们将是(无特定顺序):
- 购买更快的硬盘驱动器(可能是SSD或 10K RPM)。我不想要硬件解决方案。不仅软件有可能变得更便宜(免费软件,有人吗?),而且它还可以用于硬件修改即使不是不可能的情况下也不受欢迎的环境 - 例如,在办公室。
- 让 OS/HDD 进行缓存 - 它更清楚如何使用您的空闲 RAM。OS/HDD 具有通用缓存算法,可以缓存所有内容并尝试预测未来最需要哪些数据。他们不知道对我来说优先级是我的项目文件夹。众所周知,它们并没有真正缓存它。;)
- 周围有很多 RAM 驱动器;使用其中之一。对不起,那将是鲁莽的。只要有一点空闲时间,我就需要将我的数据同步回 HDD。在电源故障的情况下,我可以忍受失去最后五分钟的工作,但不是自上次签到以来的所有工作。
补充 2:一个想法出现了 - 使用普通的 RAM 驱动器加上一个后台文件夹同步器(但我的意思是background)。有没有这样的事情?
补充3:有趣。我刚刚在工作中试用了一个简单的 RAM 驱动器。重建时间从 ~14 秒下降到 ~7 秒(还不错),但增量构建仍然在 ~5 秒 - 就像在 HDD 上一样。任何想法为什么?它使用aspnet_compiler
和aspnet_merge
。也许他们对其他地方的其他临时文件做了一些事情?
添加了 4:哦,不错的新答案集!:) 好的,我为所有反对者提供了更多信息。:)
产生这个想法的主要原因之一不是上述软件(构建时间为 14 秒),而是我当时无法访问的另一个软件。这个另一个应用程序有一个 100 MB 的代码库,它的完整构建大约需要 5 分钟。啊,是的,它在Delphi 5中,所以编译器不是太先进。:) 将源放在 RAM 驱动器上会产生很大的不同。我想不到一分钟就知道了。我没有量过。因此,对于所有那些说操作系统可以更好地缓存内容的人——我不敢苟同。
相关问题:
第一个链接的注意事项: 它链接的问题已被删除,因为它是重复的。它问:
编译代码时你在做什么?
我链接到的Dmitri Nesteruk的答案是:
我几乎立即编译。部分原因是我的项目很小,部分原因是使用了 RAM 磁盘。