![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
FreeLibrary [D7, Win2k, WinXP]
Voffka © (2005-09-26 14:51:00)Здравствуйте, извиняюсь может за не особо корректный вопрос.
Использую в своем проекте длл библиотеки. Но нахожу странным то, что не возникает никаких исключений при завершении работы программы если я НЕ вызываю FreeLibrary(Lib). что при этом происходит? высвобождается память как-то автоматически? здесь вроде ведь нет владельца и высвобождать память библиотеки в принципе некому.
Digitman (2005-09-26 16:14:00) [1]
> Leonid Troyanovsky © (26.09.05 16:06) [6]
> Запрошенное при жизни освобождается post mortum системой
по идее - да.
но лучше не рисковать и не уповать всецело на "защиту от дурака"
Leonid Troyanovsky (2005-09-26 16:06:00) [2]
> Digitman © (26.09.05 15:34) [4]
> чреват в ряде случаев неосвобождением общесистемных ресурсов,
> запрошенных кодом ДЛЛ при жизни процесса
Запрошенное при жизни освобождается post mortum системой.
Посредство dll тут не имеет значения.
--
Regards, LVT.
Voffka (2005-09-26 15:49:00) [3]это понятно конечно. понял в общем. спасибо вам.
Digitman (2005-09-26 15:34:00) [4]
> можно и не заниматься этим
плохой подход.
чреват в ряде случаев неосвобождением общесистемных ресурсов, запрошенных кодом ДЛЛ при жизни процесса
Voffka (2005-09-26 15:27:00) [5]ясно, значит FreeLibrary как я понимаю актуально во время работы приложения, а при завершении работы приложения можно и не заниматься этим.
Digitman (2005-09-26 15:07:00) [6]
> здесь вроде ведь нет владельца и высвобождать память библиотеки
> в принципе некому
как это нет ?
"владельцем" в любом случае будет тот процесс, в АП которого тем или иным образом загружена ДЛЛ
нет процесса - нет и адресного пространства (АП)
нет АП - нет и никаких библиотек, как бы они ранее ни были загружены в это АП
Voffka (2005-09-26 14:54:00) [7]подключаю бибилиотеки динамически