使用.Net 4和Concurrent Collections缓存超时

Tel*_*leo 4 .net concurrency multithreading caching .net-4.0

您将如何使用.Net 4的新并发集合实现支持超时的缓存类?

缓存类通常会包含数十万个条目.缓存的很大一部分可能同时到期.

与典型的Web缓存(可能因内存压力而缩小)不同,此类只应在超时时自动删除对象.

Dar*_*rov 6

为什么需要实现自定义缓存类?是不是默认实现足够了?在.NET 4.0中有一个专门用于缓存的全新程序集.缓存值10分钟的示例:

var cache = MemoryCache.Default;
cache.Add("key", new object(), DateTime.Now.AddMinutes(10));
Run Code Online (Sandbox Code Playgroud)