public async Task DisableUnusedDash() { List <Task> tasks = new List <Task>(); List <dashMemory> localDict; lock (MemoryCaches.memDash) localDict = new List <dashMemory>(MemoryCaches.memDash); foreach (var item in localDict) { var DashboardId = item.dashboardId; var lastRequest = await RequestAPI.getAsyncLastAccessCache(LastAccessURL + "/" + DashboardId); TimeSpan dif; if (lastRequest != null) { dif = DateTime.Now - (DateTime)lastRequest; Logger.Info("->" + item.dashboardId + " : " + item.dashboard.name); Logger.Info("->Tempo desde Ultimo Acesso:" + dif); if (dif.TotalMinutes > MaxTimeCache) { if (item.active == true) { lock (MemoryCaches.memDash) { MemoryCaches.memDash.Where(x => x.dashboardId == item.dashboardId).FirstOrDefault().active = false; } RequestAPI.DelAsyncCache(cacheURlMain + "/" + item.dashboardId); } } else { if (item.active == false) { lock (MemoryCaches.memDash) { MemoryCaches.memDash.Where(x => x.dashboardId == item.dashboardId).FirstOrDefault().active = true; } } } } } }