Cache过期调用RemovedCallback的问题

问题描述

如题,我在页面加入如下代码:HttpRuntime.Cache.Insert("TEST",info,null,Cache.NoAbsoluteExpiration,TimeSpan.FromSeconds(12),CacheItemPriority.Normal,onRemove);//onRemove是一个委托,可以调RemovedCallback方法。代码现在是放在aspx.cs上的,就不知道是不是页面关闭以后这个RemovedCallback方法还会不会执行???是不是要把onRemove以及这个方法声明到global.asax里面呢?我想让它页面关闭12秒以后照样执行RemovedCallback方法。求思路+代码!!!

解决方案

解决方案二:
我印象中是不用,HttpRuntime是一个全局的对象。写个简单的测试程序验证一下也不是什么难事儿。。。
解决方案三:
----引用开始----HttpRuntime.Cache.Insert("TEST",info,null,Cache.NoAbsoluteExpiration,TimeSpan.FromSeconds(12),CacheItemPriority.Normal,onRemove);----引用结束----当CacheTEST过期时,会对onRemove调用.但RemovedCallback时onRemove不能对aspx.cs上的私有成员访问.
解决方案四:
引用2楼cqdyh的回复:

----引用开始----HttpRuntime.Cache.Insert("TEST",info,null,Cache.NoAbsoluteExpiration,TimeSpan.FromSeconds(12),CacheItemPriority.Normal,onRemove);----引用结束----当CacheTEST过期时,会对onRemove调用.但RemovedCallback时onRemove不能对aspx.cs上的私有成员访问.

对哦
解决方案五:
HttpRuntime.Cache,是全局对象,会调用RemovedCallback
解决方案六:
会的。

时间: 2024-09-23 14:15:50

Cache过期调用RemovedCallback的问题的相关文章

HttpContext.Current.Cache 过期时间

原文:HttpContext.Current.Cache 过期时间 为了更快的读取数据,我们一般会把常用到的数据加载到Cache中 在.NET中,Cache的存在可以依赖多中方式,主要用到HttpContext.Current.Cache类 在这里,我主要写几种依赖方式 1:不依赖任何条件 HttpContext.Current.Cache.Insert(string cacheName,object obj) 理论上是Cache会永久保存,但是当服务器重新启动,内存紧张的时候也会丢失. 2:H

ASP.NET缓存中Cache过期的三种策略

原文:ASP.NET缓存中Cache过期的三种策略 我们在页面上添加三个按钮并双击按钮创建事件处理方法,三个按钮使用不同的过期策略添加ASP.NET缓存. <asp:Button ID="btn_InsertNoExpirationCache" runat="server" Text="插入永不过期缓存"      OnClick="btn_InsertNoExpirationCache_Click" />   

Windows IIS如何设置CDN的CACHE过期时间

1.打开IIS管理器 2.选中要设置的网站单击属性,打开站点属性菜单 3.单击HTTP头选项卡 4.单击 启用内容过期 如:设置30分钟后过期,此时间段后过期项中填30,单位选择分钟 通过以上操作,完成对整个网站CACHE时间的自定义设置,另外也可以针网站的某个目录设置CACHE时间,如针对图片目录设置,在第一步选择站点时,改成选择图片文件夹,再选择属性,后续操作与3-4一样.

IIS设置CACHE过期时间的教程_win服务器

一.             打开IIS管理器   二.             选中要设置的网站单击属性,打开站点属性菜单   三.             单击HTTP头选项卡   四.             单击 启用内容过期 如:设置30分钟后过期,此时间段后过期项中填30,单位选择分钟 通过以上操作,完成对整个网站CACHE时间的自定义设置,另外也可以针网站的某个目录设置CACHE时间,如针对图片目录设置,在第一步选择站点时,改成选择图片文件夹,再选择属性,后续操作与3-4一样.

Enterprise Library深入解析与灵活应用(2): 通过SqlDependency实现Cache和Database的同步

对于一个真正的企业级的应用来说,Caching肯定是一个不得不考虑的因素,合理.有效地利用Caching对于增强应用的Performance(减少对基于Persistent storage的IO操作).Scalability(将数据进行缓存,减轻了对Database等资源的压力)和Availability(将数据进行缓存,可以应对一定时间内的网络问题.Web Service不可访问问题.Database的崩溃问题等等).Enterprise Library的Caching Application

细说 ASP.NET Cache 及其高级用法

原文:细说 ASP.NET Cache 及其高级用法 许多做过程序性能优化的人,或者关注过程程序性能的人,应该都使用过各类缓存技术. 而我今天所说的Cache是专指ASP.NET的Cache,我们可以使用HttpRuntime.Cache访问到的那个Cache,而不是其它的缓存技术. 以前我在[我心目中的Asp.net核心对象] 这篇博客中简单地提过它,今天我打算为它写篇专题博客,专门来谈谈它,因为它实在是太重要了.在这篇博客中, 我不仅要介绍它的一些常见用法,还将介绍它的一些高级用法. 在上篇

asp.net中如何管理cache

asp.net中如何管理cache 在我解释cache管理机制时,首先让我阐明下一个观念:IE下面的数据管理.每个人都会用不同的方法去解决如何在IE在管理数据.有的会提到用状态管理,有的提到的cache管理,这里我比较喜欢cache管理,因为本人比较喜"cache"这个词.但是状态管理和cache管理这两个在概念和意义上是不同的,下面就让我们来讨论下两都在各个方面的不同之处. 虽然cache管理并不存在于Windows程序,但在web环境中已经得到巨大的应用.自从HTTP变成无协议以来

CLIENT的CACHE清理失败再记录

网站由于前期同事在APACHE作了EXPIRE模块,所有在CLIENT的CACHE过期时间设置得过长. 现在遇到的问题是,尽管已在APACHE的HTTP.CONF设置了CACHE-CONTROL的内容,但除非在CLIENT端用F5或是CTRL+F5强制刷新的话,不然,打开新的浏览器或是MOUSE重新点击不会得到新的内容. 用PAGESPEED,HTTPWATCH等查看CLIENT的HTTPD HEADER内容,服务器设置生效,但客户端依然故我. 于是,用WIRESHARK抓包,原来,浏览器新窗口

Drupal系统中Cache缓存实践经验

drupal教程:Cache在drupal的中应用 drupal本身会在多个层面执行php代码,这就造成了它需要大量的时间来输出内容.Cache(缓存)是最大化提高drupal性能的关键性技术.在决定采取何种缓存机制之前,我们必须知道该站是何种类型以及什么样的用户回来访问该站.并不是所有的站点都有相同的缓存机制.(解释:就本站而言,采用的缓存技术主要有APC,Boost) 缓存技术需要根据不同数据类型以及对用户的影响来区分.Drupal中的缓存可以根据以下两大类用户来区分:     匿名用户