我希望有一个并发字典,如果在一段时间内没有使用这些项目,它们就会过期。
现在这似乎是一个相当简单的类,但我已经做了一些搜索并遇到了MemoryCache
。这似乎正是我想要的(参见 参考资料CacheItemPolicy.SlidingExpiration
)。我想知道这是否符合我的要求 - 或者我的用例是否有任何明显的缺点?
这是一个客户端 WPF 应用程序。
我希望有一个并发字典,如果在一段时间内没有使用这些项目,它们就会过期。
现在这似乎是一个相当简单的类,但我已经做了一些搜索并遇到了MemoryCache
。这似乎正是我想要的(参见 参考资料CacheItemPolicy.SlidingExpiration
)。我想知道这是否符合我的要求 - 或者我的用例是否有任何明显的缺点?
这是一个客户端 WPF 应用程序。
MemoryCache
确实是线程安全的,适合您的需求,但要考虑的一件事是,如果您打算创建它的多个实例,它可能不是最佳选择,如 MSDN 所述:
MemoryCache 不是单例,但您应该只创建几个或可能只创建一个 MemoryCache 实例,并且缓存项目的代码应该使用这些实例。
有关更多详细信息,您可以在此处查看我的问题:Using multiple instances of MemoryCache