Re[2]: Обьекты Windows - удаление/освоброждение
От: AlexeyVodolazhsky Украина  
Дата: 10.02.04 07:33
Оценка: +1 :)
Здравствуйте, Vamp, Вы писали:

V>Освобождать надо все, что ты создал.

V>Хотя скажу по секрету, неосвобождение объектов обычно не приводит к краху.

Не приводит... если их не много...
Я несколько раз наблюдал прелюбопытнейшую картину — через приблизительно полчаса работы программы (активно работающей с графикой и потребляющей довольно много ресурсов) в Win98 сначала "слетала" графика (с 24-битного цвета на 256 цветов, а затем и на 16), затем шрифты заменялись на стандартный корявый системный шрифт. А затем программа просто вызывала исключение и завершалась. Операционке, правда, от этого легче не становилось Все дело было в том, что глубоко в недрах программы создавались GDI объекты (например, вызовами типа GetDC и т.д.), а потом не освобождались. В результате — происходила нехватка ресурсов и, как следствие, сбой всей системы.
Стоит отметить, что на NT системах подобного не происходило — приложение закрывалось с ошибкой, но система продолжала работать стабильно.

Так что, все ресурсы надо обязательно освобождать.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.