Должен ли я использовать статический кэшированный ResourceManager или новый экземпляр для каждого веб-запроса? Это имеет значение?

Что, если любые последствия создания нового .NET ResourceManagerдля каждого запроса с new ResourceManger(myResourceType.FullName, myResourceType.Assembly)по сравнению с использованием «кэшированного экземпляра ResourceManager " в сгенерированном классе .Designer.cs ( MyResourceType.ResourceManager)?

Я работаю в контексте приложения ASP.NET MVC 3 с использованием файлов .resx.

Изменить: я интересует последствия, выходящие за рамки затрат на выделение памяти для нового объекта.

Редактировать: в документации MSDN для ResourceManager.ReleaseAllResourcesговорится, что:

Этот метод сократит рабочий набор в работающее приложение. Любые будущие поиски ресурсов в этом ResourceManager будут как exte nsive в качестве первого поиска, так как ему нужно будет снова искать и загружать ресурсы.

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

6
задан ChaseMedallion 27 June 2012 в 12:30
поделиться