.net-4.0 – Asp.Net 4.0 CacheItemPolicy滑动到期不正确?
发布时间:2020-12-16 04:25:59 所属栏目:asp.Net 来源:网络整理
导读:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Runtime.Caching;using Xunit;namespace Demo.Caching.Test{ class MemoryCacheManagerTest { [Fact] public void Test() { CacheItemPolicy policy = new
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.Caching; using Xunit; namespace Demo.Caching.Test { class MemoryCacheManagerTest { [Fact] public void Test() { CacheItemPolicy policy = new CacheItemPolicy(); policy.SlidingExpiration = TimeSpan.FromSeconds(1); MemoryCache.Default.Set("cacheKey4",4,policy); Assert.Equal(4,MemoryCache.Default.Get("cacheKey4")); System.Threading.Thread.Sleep(600); Assert.Equal(4,MemoryCache.Default.Get("cacheKey4")); // Here I get error // Expected: 4,Actual: (null) System.Threading.Thread.Sleep(1000); Assert.Null(MemoryCache.Default.Get("cacheKey4")); } } } 解决方法
可能原因是睡眠是非确定性的.它不会暂停你的线程600毫秒.它暂停线程至少600毫秒.如果你没有意识到,它可能会超过你设定的1秒滑动期限.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-ajax – CollapsiblePanelExtender设置已折叠
- asp.net – 带有查询字符串的server.Transfer
- asp.net-mvc-4 – 带有附加属性的ScriptBundle
- asp.net-core – 将命名空间添加到ASP.NET MVC 6中的所有视
- asp.net-mvc – TinyURL喜欢使用ASP.NET MVC进行路由吗?
- 使用ApplicationHost.CreateApplicationHost()创建Asp.Net帖
- asp.net-core – 使用ASP.NET Core从`project.json`中排除发
- 版本化ASP.NET Web应用程序
- asp.net – 如何在工作日的特定时间回收应用程序池?
- asp.net – 如何设置IHttpAsyncHandler超时?
推荐文章
站长推荐
- asp.net – 我可以在GoDaddy上使用NHibernate吗?
- asp.net – 如何从下拉列表中选择“其他”选项时
- asp.net-mvc – 从一个项目到另一个项目调用控制
- asp.net-mvc – 尝试通过安全透明方法xxx来访问安
- asp.net – ApplicationInstance.CompleteReques
- asp.net – MS Chart控件创建的临时文件应该放在
- asp.net-mvc – {get;组; }在ViewModel中使用
- asp.net-mvc – Telerik mvc grid,columns.bound
- ASP.NET Web Forms jQuery
- asp.net – MaintainScrollPositionOnPostback属
热点阅读