An answer https://stackoverflow.com/questions/354160/what-do-you-do-while-your-codes-compiling#354176 (see below) to one of the questions right here on Stack Overflow gave me an idea for a great little piece of software that could be invaluable to coders everywhere.
我正在想象 RAM 驱动器软件,但有一个关键的区别 - 它会镜像我的硬盘驱动器上的真实文件夹。更具体地说 - 包含我当前正在处理的项目的文件夹。这样,任何构建都几乎是瞬时的(或者至少快几个数量级)。 RAM 驱动器将仅使用空闲资源在后台将其内容与硬盘驱动器同步。
快速谷歌搜索没有发现任何结果,但也许我只是不知道如何谷歌。也许有人知道这样的软件?最好是免费的,但合理的费用也可以。
Added:有人建议了一些解决方案,但我一开始就放弃了。它们将是(排名不分先后):
-
购买更快的硬盘驱动器(SSD http://en.wikipedia.org/wiki/Solid-state_drive也许或 10K RPM)。我不需要硬件解决方案。软件不仅有可能变得更便宜(免费软件,有人吗?),而且还可以在硬件修改不受欢迎甚至不可能的环境中使用 - 例如,在办公室。
-
让操作系统/HDD 进行缓存 - 它更知道如何使用您的空闲 RAM。操作系统/硬盘具有通用缓存算法,可以缓存所有内容并尝试预测将来最需要哪些数据。他们不知道对我来说优先事项是我的项目文件夹。众所周知,他们并没有真正缓存太多数据。 ;)
-
周围有大量的 RAM 驱动器;使用其中之一。抱歉,这样就太鲁莽了。只要有一点空闲时间,我就需要将数据同步回硬盘。如果发生停电,我可以忍受失去最后五分钟的工作,但不能忍受失去上次签到以来的所有工作。
Added 2:出现的一个想法 - 使用普通 RAM 驱动器加上后台文件夹同步器(但我的意思是背景)。有这样的事吗?
Added 3:有趣的。我刚刚在工作中尝试了一个简单的 RAM 驱动器。重建时间从约 14 秒下降到约 7 秒(不错),但增量构建仍为约 5 秒 - 就像在 HDD 上一样。有什么想法吗?它用aspnet_compiler
and aspnet_merge
。也许他们在其他地方对其他临时文件做了什么?
Added 4:哦,很好的新答案! :) 好的,我为所有反对者提供了更多信息。 :)
这个想法的主要原因之一不是上述软件(14 秒的构建时间),而是另一个我当时无法访问的软件。这个其他应用程序有 100 MB 的代码库,其完整构建大约需要 5 分钟。啊,是的,它在Delphi 5 http://en.wikipedia.org/wiki/Embarcadero_Delphi,所以编译器并不太先进。 :) 将源代码放在 RAM 驱动器上会产生很大的差异。我想我不到一分钟就明白了。我没有测量过。因此,对于所有说操作系统可以更好地缓存内容的人来说,我不敢苟同。
相关问题:
用于加速 IDE 的 RAM 磁盘 https://stackoverflow.com/questions/501718/ram-disk-for-speed-up-ide
第一个链接的注意事项:它链接到的问题已被删除,因为它是重复的。它问:
编译代码时你会做什么?
答案是德米特里·涅斯特鲁克 https://stackoverflow.com/users/9476/dmitri-nesteruk我链接到的是:
我几乎立即编译。部分是因为我的项目很小,部分是因为使用了 RAM 磁盘。