using System; using System.Collections.Generic; using System.Text; namespace ReZero.SuperAPI { public class CacheManager: ICacheManager where T:class,new() { private static List cacheObject = null!; private static readonly object cacheLock = new object(); public static CacheManager Instance { get { return new CacheManager(); } } public List GetList() { if (cacheObject != null) { return cacheObject; } lock (cacheLock) { if (cacheObject == null) { var db = App.Db; cacheObject = db.Queryable().ToList(); } } return cacheObject; } public void ClearCache() { lock (cacheLock) { cacheObject = null!; } } } }