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

Вниз

Как правильно писать код   Найти похожие ветки 

 
ratrov   (2008-05-19 12:47) [0]

Подскажите пожалуйста, вот например у меня есть код, который несколько раз за секунду прорисовывает прозрачно какую-то картинку.
В данной процедурке используется несколько временных TBitmap для получения прозрачного изображения. При в ходе в процедуру я их создаю ну и при выходе уничтожаю.
Так вот, на примере данного кода, может быть правильно было бы повесить создание\удаление этих временных TBitmap"ов на создание\деструкцию главной формы? Насколько я выиграю в производительности если не буду как сейчас постоянно создавать и освобождать их в самой процедуре?


 
Palladin ©   (2008-05-19 12:48) [1]


>  Насколько я выиграю в производительности если не буду как
> сейчас постоянно создавать и освобождать их в самой процедуре?

а написать засечь и сравнить религия не позволяет?


 
ratrov   (2008-05-19 12:56) [2]

да я пока не знаю где и как засекать)
я в общих чертах хотел узнать как правильно обычно это пишется.


 
ratrov   (2008-05-19 12:58) [3]

да и меня интересует не только вемя выполнения данной процедурки а соотношение время\ресурсоемкость


 
ANB   (2008-05-19 13:00) [4]


> ratrov   (19.05.08 12:47)

Из тела цикла, который выполняется много раз, очень желательно убрать все лишнее. Все, что можно сделать до цикла - надо сделать ДО цикла.
По сабжу : создание/уничтожение объекта - не быстрая операция. Если объект можно использовать повторно, то лучше создавать до цикла и уничтожать после. Где хранить ссылку на него - это уж вопрос религии.
ИМХО : в поле формы получше будет.


 
ratrov   (2008-05-19 13:09) [5]

ANB, спасибо.


 
Palladin ©   (2008-05-19 13:12) [6]

думаю, в контексте операций рисования затраты на создание временных объектов будут мизерными, но конечно лучше создать их сразу... по крайней мере так будет идеологически правильнее )



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

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

Наверх




Память: 0.48 MB
Время: 0.05 c
2-1211120855
Franzy
2008-05-18 18:27
2008.06.08
Как запустить из программы другую (консольную) программу?


2-1211005626
New1
2008-05-17 10:27
2008.06.08
ActionMainMenuBar


2-1210658320
voe
2008-05-13 09:58
2008.06.08
парсинг Web


10-1146725232
abasheev
2006-05-04 10:47
2008.06.08
ошибка при создании XML документа


2-1210874146
TStas
2008-05-15 21:55
2008.06.08
Как получить размер экрана в сантиметрах?