高速缓存使用的概述
Cache是一个在名称空间System.Web.Cache中的Cache类的实例。它除了和Application一样可作为简单的键或值对的Hashtable之外,它还支持其他的一些功能:
1、基于依赖性的终止,依赖性可以是其他的Cache的关键字、文件或者时间戳记。如果其中一个依赖性发生改变或者中止(时间戳记),那么该项Cache内容就会无效并被从Cache中删除。
2、锁定管理,和Application相似,并发的请求也可能会试图修改Cache。Application解决这个问题的办法是通过提供Lock()和UnLock()方法。不过,与Application不同的是,Cache类自己可以进行内部锁定管理。所以,尽管在更新Application时它需要我们明确地调用Lock()和UnLock()方法,但是对于Cache却不用这样做。请记住,和在Application中一样,在Cache中我们也需要对存储在其中的对象的并发进行管理。
3、资源管理,Cache中各项在不使用时是自动的删除的,这样可以释放宝贵的内存资源。所以,在我们请求某项之前,我们通常需要检查它是否还存在。
4、回调,Cache所支持的各种功能允许当从Cache中删除顶的时候,我们仍然可以运行代码。Cache还支持以下两种插入项的方法:隐式插入,这种语法和我们使用关键字或值对来处理Seesion或者Application的语法是相似的。显示插入,使用Insert()方法,这可以使我们建立特定的关系,比如说依赖性。