Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.17;
Скачать: CL | DM;

Вниз

Как экономить ресурсы?   Найти похожие ветки 

 
Jimmy   (2006-08-27 18:06) [0]

Я тут заметил интересный факт: 5-й PhotoShop занимает всего 4% ресурсов моего PC. А мой скромный графический редактор аж 15%! В нем много компонентов (CheckBox"ов, Edit"ов, форм и т.п.) созданных на этапе разработки. Много глобальных переменных. Может быть задаю не совсем корректный вопрос, но тем не менее. Не подскажите, как надо писать программу, чтобы она кушала меньше ресурсов? По возможности создавать объекты динамически и по мере надобности уничтожать их? Использовать dll? Может что-то еще? Заранее спасибо.


 
Desdechado ©   (2006-08-27 18:08) [1]

> создавать объекты динамически и по мере надобности уничтожать их


 
Ketmar ©   (2006-08-27 18:17) [2]

писать на API. %-)


 
Jimmy   (2006-08-27 19:32) [3]

Что значит писать на API?


 
Ketmar ©   (2006-08-27 20:03) [4]

ровно то, что написано. не использовать VCL.


 
Eraser ©   (2006-08-27 20:09) [5]

> [2] Ketmar ©   (27.08.06 18:17)
> писать на API. %-)

вредный совет, imho.

> Jimmy   (27.08.06 18:06)


> Как экономить ресурсы?

[1]


 
Ketmar ©   (2006-08-27 20:28) [6]

> [5] Eraser ©   (27.08.06 20:09)
позволю себе не согласиться. не "вредный" и "не всегда применимый".
заметь, что он был дан уже после [1]. просто увеличение поля выбора.


 
Eraser ©   (2006-08-27 20:49) [7]

> [6] Ketmar ©   (27.08.06 20:28)

в данном случае точно не применим, т.к. вряд ли тот же фотошоп написан на чистом API.
Написание проекта с развитым UI на чистом API в лучшем случае приведет к тому, что прект загнется так и не родившись, в худшем - будет создано некое подобие VCL, только более глючное и тормознутое, читать же исходный код такое программы - вообще бесполезное занятие.


 
Мефисто   (2006-08-27 20:56) [8]


> Jimmy   (27.08.06 18:06) 


По задаyysv вопросам в медиа, подозреваю, что гуляют там нехилые TBitMap


 
Мефисто   (2006-08-27 20:56) [9]


> Jimmy   (27.08.06 18:06) 


По заданным вопросам в медиа, подозреваю, что гуляют там нехилые TBitMap


 
Ketmar ©   (2006-08-27 20:57) [10]

> [7] Eraser ©   (27.08.06 20:49)
"скромный графический редактор" вполне можно сделать и на API.


 
Eraser ©   (2006-08-27 21:05) [11]

> [10] Ketmar ©   (27.08.06 20:57)

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

А ресурсы в граф. редакторе тратятся, по большей части, уж точно не на UI.


 
Ketmar ©   (2006-08-27 21:09) [12]

> [11] Eraser ©   (27.08.06 21:05)
зато неплохое упражнение. %-)


 
PZ   (2006-08-28 05:06) [13]

> [1] Desdechado ©   (27.08.06 18:08)
>> создавать объекты динамически и по мере надобности уничтожать их

Может быть ... по мере ненадобности уничтожать их


 
Jimmy   (2006-08-28 19:26) [14]

> Мефисто.
 Дело не в большом Image. Даже при скромных размерах идет колоссальная
 потеря ресурсов.
> Ketmar.
 Не считаю возможным делать свою программу без VCL. Не то, чтобы невозможно, просто как говорит Гребенщиков это будет хуже, чем сифилис.
> Desdechado
 А если все же объекты создавать не динамически а на этапе разработки на
 каком-нибудь фрейме, который поместить в dll. Тогда если этот фрейм в
 какой-то момент времени программе не нужен, память не тратиться?


 
Desdechado ©   (2006-08-28 19:35) [15]

> Даже при скромных размерах идет колоссальная потеря ресурсов.
Так освобождай, а не теряй.

> А если все же объекты создавать не динамически а на этапе разработки на
>  каком-нибудь фрейме
Фреймы только для удобства придумали. А динамическое создание означает Form1.Create ... Form1.Release, а не накидывание в динамике чекбоксов и эдитов на форму.



Страницы: 1 вся ветка

Текущий архив: 2006.09.17;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.051 c
2-1156290623
RASkov
2006-08-23 03:50
2006.09.17
Рекурсия


15-1156521942
hamster
2006-08-25 20:05
2006.09.17
Упакованные exe


2-1156805812
7D7
2006-08-29 02:56
2006.09.17
Кодировка текста


6-1144511423
Ezorcist
2006-04-08 19:50
2006.09.17
Что такое sockaddr_in?


4-1147722705
Mr tray
2006-05-15 23:51
2006.09.17
из хук-DLL узнать значение переменной в моей программе