using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Media.Imaging; namespace AIK.Common { public static class GlobalImageCache { private static readonly ConcurrentDictionary _imgListKey = new ConcurrentDictionary(); public static BitmapImage GetOrAdd(string url, Func valueFactory) { return _imgListKey.GetOrAdd(url, valueFactory); } public static bool TryGetValue(string key, out BitmapImage value) { return _imgListKey.TryGetValue(key, out value); } } }