9
Sperrmuster für die ordnungsgemäße Verwendung von .NET MemoryCache
Ich gehe davon aus, dass dieser Code Probleme mit der Parallelität hat: const string CacheKey = "CacheKey"; static string GetCachedData() { string expensiveString =null; if (MemoryCache.Default.Contains(CacheKey)) { expensiveString = MemoryCache.Default[CacheKey] as string; } else { CacheItemPolicy cip = new CacheItemPolicy() { AbsoluteExpiration = new DateTimeOffset(DateTime.Now.AddMinutes(20)) }; expensiveString = SomeHeavyAndExpensiveCalculation(); MemoryCache.Default.Set(CacheKey, …