询问者
请教个缓存的问题

问题
全部回复
-
你右键Windows任务栏,查看“任务管理器”,当任务占用你内存百分比很高的时候自然就不足了,如果严重不足,还会引发“System Memory Overflow"等问题(譬如死循环或者递归死循环等)。
所以应该多善于使用缓存。何时开始释放根据.NET框架会自行调配的,如果显示释放,请GC.Collection()
If you think one reply solves your problem, please mark it as An Answer, if you think someone's reply helps you, please mark it as a Proposed Answer
Help by clicking:
Click here to donate your rice to the poor
Click to Donate
Click to feed Dogs & Cats
Found any spamming-senders? Please report at: Spam Report -
缓存,会在内存不足时进行释放,内存使用情况可以通过任务管理器查看,具体如何释放如下:
清理是在内存不足时从缓存中删除项的过程。如果某些项在一段时间内未被访问,或是在添加到缓存中时被标记为低优先级,则这些项会被移除。ASP.NET 使用 CacheItemPriority 对象来确定要首先清理的项。有关更多信息,请参见如何:将项添加到缓存中。
除了清理外,在缓存项过期时,ASP.NET 会自动从缓存中移除这些项。向缓存添加项时,可以按下表中的描述设置其过期时间。
过期类型
说明
可调过期
指定某项自上次被访问后多长时间过期。例如,可以将某项设置为自上次在缓存中被访问后 20 分钟过期。
绝对过期
指定某项在设定的时间过期,而不考虑访问频率。例如,可以将某项设置为在 6:00 PM 过期,或四小时后过期。
可以将缓存中某一项的生存期配置为依赖于其他应用程序元素,如某个文件或数据库。当缓存项依赖的元素更改时,ASP.NET 将从缓存中移除该项。例如,如果您的网站显示一份报告,该报告是应用程序通过 XML 文件创建的,您可以将该报告放置在缓存中,并将其配置为依赖于该 XML 文件。当 XML 文件更改时,ASP.NET 会从缓存中移除该报告。当代码请求该报告时,代码会先确定该报告是否在缓存中,如果不在,代码会重新创建该报告。因此,始终都有最新版本的报告可用。
你可以到MSDN中国官方网站查看ASP.NET 缓存概述,链接地址 http://msdn.microsoft.com/zh-cn/library/ms178597(VS.80).aspx .
或http://www.cnblogs.com/fish-li/archive/2011/12/27/2304063.html 了解详细信息。
-
我主要是想知道,低于多少时才算低。
无
,NET自己控制的,你是无法直接知道的。If you think one reply solves your problem, please mark it as An Answer, if you think someone's reply helps you, please mark it as a Proposed Answer
Help by clicking:
Click here to donate your rice to the poor
Click to Donate
Click to feed Dogs & Cats
Found any spamming-senders? Please report at: Spam Report- 已建议为答案 Happy Chen - MSFTModerator 2013年8月9日 9:13