MemoryCache类使用记录
Posted kent-apple
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MemoryCache类使用记录相关的知识,希望对你有一定的参考价值。
NuGet引用Microsoft.Extensions.Caching.Memory包
引用命名空间
using Microsoft.Extensions.Caching.Memory; using Microsoft.Extensions.Options;
实例化之后就可以使用.
static void Main(string[] args) { var cache = new MemoryCache(new MemoryCacheOptions());
//设置静态缓存 cache.Set("A", 1);
if (cache.TryGetValue("User", out int value))
Console.WriteLine(value);
//设置一秒后过期
cache.Set("B",2,DateTimeOffset.Now.AddMilliseconds(1000).DateTime);
Console.ReadLine(); }
有两点需要注意.
1.取出缓存的时候取出的是实例引用.修改该实例会影响缓存内的实例.
2.在Standard类库中引用Microsoft.Extensions.Caching.Memory包(版本:3.1.1)时,依赖的System.Memory版本为4.5.2.会与其他包或者SDK依赖的System.Memory(4.5.3)产生版本冲突,需要手动修改下.希望版本能快速跟上.
依赖关系(Microsoft.Extensions.Caching.Memory(3.1.1)->Microsoft.Extensions.Options (3.1.1)->Microsoft.Extensions.Primitives (3.1.1)->System.Memory (4.5.2))
以上是关于MemoryCache类使用记录的主要内容,如果未能解决你的问题,请参考以下文章
#yyds干货盘点#分析一个错误使用MemoryCache导致的BUG
获取使用 MemoryCache 类 c# 缓存的所有缓存对象