温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ASP.NET缓存中Cache过期的三种策略分别是什么

发布时间:2021-10-28 14:09:01 来源:亿速云 阅读:205 作者:柒染 栏目:编程语言

这期内容当中小编将会给大家带来有关ASP.NET缓存中Cache过期的三种策略分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

我们在页面上添加三个按钮并双击按钮创建事件处理方法,三个按钮使用不同的过期策略添加ASP.NET缓存。

<asp:Button ID="btn_InsertNoExpirationCache" runat="server" Text="插入永不过期缓存"   OnClick="btn_InsertNoExpirationCache_Click" /> <asp:Button ID="btn_InsertAbsoluteExpirationCache" runat="server" Text="插入绝对时间  过期缓存" OnClick="btn_InsertAbsoluteExpirationCache_Click" /> <asp:Button ID="btn_InsertSlidingExpirationCache" runat="server" Text="插入变化时间  过期缓存" OnClick="btn_InsertSlidingExpirationCache_Click" />

三个按钮的Click事件处理方法如下:

protected void btn_InsertNoExpirationCache_Click(object sender, EventArgs e)  {      DataSet ds = GetData();      Cache.Insert("Data", ds);  }  protected void btn_InsertAbsoluteExpirationCache_Click(object sender, EventArgs e)  {      DataSet ds = GetData();      Cache.Insert("Data", ds,null, DateTime.Now.AddSeconds(10), TimeSpan.Zero);  }  protected void btn_InsertSlidingExpirationCache_Click(object sender, EventArgs e)  {      DataSet ds = GetData();      Cache.Insert("Data", ds, null, DateTime.MaxValue, TimeSpan.FromSeconds(10));  }

我们来分析一下这三种ASP.NET缓存过期策略。

◆永不过期。直接赋值缓存的Key和Value即可

◆绝对时间过期。DateTime.Now.AddSeconds(10)表示缓存在10秒后过期,TimeSpan.Zero表示不使用平滑过期策略。

◆变化时间过期(平滑过期)。DateTime.MaxValue表示不使用绝对时间过期策略,TimeSpan.FromSeconds(10)表示缓存连续10秒没有访问就过期。

在这里,我们都使用了Insert()方法来添加缓存。其实,Cache还有一个Add()方法也能向缓存中添加项。不同之处在于Add()方法只能添加缓存中没有的项,如果添加缓存中已有的项将失败(但不会抛出异常),而Insert()方法能覆盖原来的项。

注意:和Application不同,这里不需要使用在插入ASP.NET缓存的时候进行锁操作,Cache会自己处理并发。

上述就是小编为大家分享的ASP.NET缓存中Cache过期的三种策略分别是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI