Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
2-1210934464
Kolan
2008-05-16 14:41
2008.06.08
Как синхронизировать два TListView


15-1209054886
БарЛог
2008-04-24 20:34
2008.06.08
VBScript дописать файл


2-1210669958
affonya
2008-05-13 13:12
2008.06.08
DBgrid закрашивание букв


8-1180962851
Igor_thief
2007-06-04 17:14
2008.06.08
Screenshot формы (с рамкой)


15-1209110171
worldmen
2008-04-25 11:56
2008.06.08
Создать тест. Принцыпы создания




   Наверх