using System.Threading.Tasks;
using System.Runtime.Serialization.Json;
using System.Collections.Generic;
using System.Runtime.Caching;
static async Task Main(string[] args) {
var people = (List<string>)_cache.Get("people");
Console.Out.WriteLine(JsonSerializer.Serialize<List<string>>(people));
static async Task Check(int secondsToWait) {
await Task.Delay(TimeSpan.FromSeconds(secondsToWait));
var people2 = (List<string>)_cache.Get("people");
Console.Out.WriteLine("IsNull");
Console.Out.WriteLine(JsonSerializer.Serialize<List<string>>(people2));
private static MemoryCache _cache = MemoryCache.Default;
var people = new List<string>();
people.Add("Patrict Stewart");
people.Add("Brent Spiner");
people.Add("Jonathon Frakes");
people.Add("Marina Sirtus");
people.Add("Gates McFadden");
people.Add("Michael Dorn");
people.Add("LeVar Burton");
people.Add("Wil Wheaton");
people.Add("Denise Crosby");
people.Add("Majel Barrett");
people.Add("Colm Meaney");
people.Add("Whoopi Goldberg");
people.Add("John Di Lancie");
people.Add("Diana Muldaur");
CacheItemPolicy policy = new CacheItemPolicy { AbsoluteExpiration = DateTimeOffset.Now.AddSeconds(10) };
_cache.Set("people", people, policy);