public CachedDataDictionary( Func <Task <Dictionary <TKey, TValue> > > getData, int validDataInSeconds = 60 *5, CachedDataDictionaryUpdateStrategy updateStrategy = CachedDataDictionaryUpdateStrategy.UseSynchronizedUpdates) : this(getData, TimeSpan.FromSeconds(validDataInSeconds), updateStrategy) { }
public CachedDataDictionary( Func <Task <Dictionary <TKey, TValue> > > getData, TimeSpan expirationPeriod, CachedDataDictionaryUpdateStrategy updateStrategy = CachedDataDictionaryUpdateStrategy.UseSynchronizedUpdates) { _getData = getData; _expirationPeriod = expirationPeriod; _updateStrategy = updateStrategy; _updateSync = new SemaphoreSlim(1, 1); }