public IDictionaryEnumerator GetEnumerator ()
{
List <CacheItem> list = null;
try {
cacheLock.EnterReadLock ();
list = cache.ToList ();
} finally {
// See comment at the top of the file, above cacheLock declaration
cacheLock.ExitReadLock ();
}
return new CacheItemEnumerator (list);
}