ResourceManager.ReleaseAllResources Метод

Определение

Сообщает диспетчеру ресурсов, что следует вызвать метод Close() на всех объектах ResourceSet и освободить все ресурсы.

public:
 virtual void ReleaseAllResources();
public virtual void ReleaseAllResources ();
abstract member ReleaseAllResources : unit -> unit
override this.ReleaseAllResources : unit -> unit
Public Overridable Sub ReleaseAllResources ()

Комментарии

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

Примечание

Начиная с платформа .NET Framework версии 2.0 ReleaseAllResources метод не является потокобезопасными относительно GetObjectопераций и GetStream операцийGetString. Преимуществом этого изменения является повышение производительности для нескольких потоков, обращаюющихся к ресурсам. Однако при вызове ReleaseAllResources метода в одном потоке при одновременном получении ресурса в другом потоке операция получения может вызвать ObjectDisposedException исключение.

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

Примечание

Вызов этого метода не выгружает вспомогательные сборки. Чтобы выгрузить вспомогательные сборки, используйте Unload метод.

Применяется к