public static List <Guid> GetQueuesToScan(MRSQueue.ScanType scanType) { List <Guid> list = null; DateTime utcNow = DateTime.UtcNow; lock (MRSQueue.locker) { foreach (MRSQueue mrsqueue in MRSQueue.queues.Values) { DateTime t = (scanType == MRSQueue.ScanType.Light) ? mrsqueue.NextRecommendedLightScan : mrsqueue.NextRecommendedScan; if (t <= utcNow) { if (list == null) { list = new List <Guid>(); } list.Add(mrsqueue.MdbGuid); } } } if (list != null) { list = CommonUtils.RandomizeSequence <Guid>(list); } return(list); }
public void Tickle(MRSQueue.ScanType scanType) { switch (scanType) { case MRSQueue.ScanType.Light: this.NextRecommendedLightScan = DateTime.UtcNow; return; case MRSQueue.ScanType.Heavy: this.NextRecommendedScan = DateTime.UtcNow; return; default: return; } }