private static void RemoveRmsGreaterThan(BaseDictionary <TimePeriod, RmsedNumeral> vals, double maxRms) { List <TimePeriod> toRemoved = new List <TimePeriod>(); foreach (var item in vals.KeyValues) { if (item.Value.Rms > maxRms) { toRemoved.Add(item.Key); } } vals.Remove(toRemoved); }
/// <summary> /// 是否超出了指定的限制时间。 /// 如果超出了,则自动解禁。必须访问本方法进行判断和解禁。 /// </summary> /// <param name="obj"></param> /// <returns></returns> public bool IsAvailable(TKey obj) { if (data.Contains(obj)) { if (GetRemainTime(obj) > TimeSpan.Zero) { return(false); } data.Remove(obj); } return(true); }