我使用.NET MemoryCache
类进行缓存。
我有以下要求:
这可以使用MemoryCache
吗?
答案 0 :(得分:1)
这可以使用MemoryCache吗?
不,我担心框架中内置的MemoryCache
类并不能提供您正在寻找的功能。您可能需要自己实现它。 MemoryCache
类为您提供了一项功能,当您将项目的到期时间设置为x
时间与当前时间相比时,在此x
时间之后您将不会能够获取缓存的项目,因为它将被驱逐,如果您尝试在此x
时间之前获得该项目,您可能会成功或不成功:如果您的应用程序可能仍然从缓存中逐出该项目例如,一直在消耗大量内存。
所以底线是这样的:如果你已经将一些项目放入MemoryCache
,那么绝对不能保证你能够在稍后阶段在MemoryCache中找到这个项目。顺便提一下缓存的全部内容:您应该只将数据数据存储在此类缓存中,如果在此缓存中不可用,则可以使用其他方法进行检索。通常,那些检索数据的其他方法包括进行更昂贵的数据库或HTTP远程调用。