Подтвердить что ты не робот

Каковы веские причины использования MemoryCache в обычном старом словаре <string, object>

Я только что встретил MemoryCache, который является новым в .NET 4.

Я понимаю, что это может быть полезно, если вы хотите:

  • Ограничить общее использование памяти кэшем
  • Имейте время истечения срока действия объекта (время жизни) для объектов, которые вы кладете в кеш

Есть ли другие веские причины использовать MemoryCache по стандарту Dictionary<string,object>

У меня есть несколько книг на С# и .NET, и в ней нет ссылки.

4b9b3361

Ответ 1

Я думаю, вы прибили две убедительные причины: -)

MemoryCache имеет стратегию выселения, поэтому он может выкидывать записи, которые больше не нужны, или для того, что вам больше не хватает памяти.

Словарь не "потеряет содержимое".

Обновление: MemoryCache является потокобезопасным и имеет такие методы, как AddOrGetExisting. С помощью словаря вам придется синхронизировать доступ самостоятельно (или использовать ConcurrentDictionary).