软件的缓存机制到底是什么?

这里报告 FancyCache 软件的Bug或建议,
非常感谢您的支持!
回复
abcddd
3级用户
3级用户
帖子: 16
注册时间: 周一 12月 19, 2011 3:20 pm

软件的缓存机制到底是什么?

帖子 abcddd »

最新的0.72版本,我使用emule电驴下载,下载所在盘开了3G缓存,读写全开,延时为1小时。50分钟后,通过性能统计监视看到,还剩余2G缓存没有使用,而实际下载文件已经超过2G,也就是有至少1G没有被缓存,监视器里的“写入ios”不断在增长,硬盘也貌似在不断读写的状态。不知道我的理解是否正确,这个数据表示此时实际写入磁盘的数据量,那么既然延时为一小时,时间未到,而缓存又还剩余2G的情况下,为什么会出现不断往硬盘上写数据的情况?

之前论坛里有一篇文章说过类似问题,大意是比如下载16G的数据,开4G缓存,那么硬盘只需要写四次,虽然当时就觉得这个不大可能,按照常理或一般的实现机制,也不大可能会出现一次写入4G缓存的情况,而是一个逐步写入的过程,但像我这里这样,缓存还没有使用完就开始读写硬盘就比较奇怪了。不知道软件的缓存机制究竟是什么?为什么会出现这种情况?
pzly
1级用户
1级用户
帖子: 4
注册时间: 周四 3月 08, 2012 8:50 am

Re: 软件的缓存机制到底是什么?

帖子 pzly »

LZ的下载盘FC缓存设置里是不是勾选了“均匀写入缓写数据”啊?理论上来说的话,下载盘的设置勾选上“写入后优先释放缓存”这项,这样当就能达到LZ所说的16G的数据,开4G缓存,共写入4次了。如果勾选上“均匀写入缓写数据”,就会出现LZ的情况,软件为了防止出现大量数据同时写入,会自动调整,就出现了LZ的情况。
abcddd
3级用户
3级用户
帖子: 16
注册时间: 周一 12月 19, 2011 3:20 pm

Re: 软件的缓存机制到底是什么?

帖子 abcddd »

感谢楼上的解答,不过我这肯定不是这种情况,因为我根本没选“均匀写入缓写数据”这项,而恰恰是如你所说的选择了“写入后优先释放缓存”
abcddd
3级用户
3级用户
帖子: 16
注册时间: 周一 12月 19, 2011 3:20 pm

Re: 软件的缓存机制到底是什么?

帖子 abcddd »

据我这里的观察,即使选上“写入后优先释放缓存”后也不是什么16G数据开4G缓存只写入4次,而是在缓存用完之后不断开始读取新的缓存,同时开始不断写入硬盘,此时实际上软件已经基本失去了作用或者说效率大减,只是像我一楼说的,缓存还剩余很多的情况下为什么也要频繁写入硬盘比较奇怪。
回复