Вниз
Скачать: CL | DM;

оптимизация использования Ttimer   Найти похожие ветки 

 
ЗфдЗфднср   (2007-11-08 16:23) [0]

Здравствйте господа.
У меня следуюшая проблемка.
Есть прога, в которой каждые 4 минуты (использую Ttimer) происходит обработка некоторых данных. Трудность в том, что кол-во данных, подлежащих обработке всё время растёт. Соответственно и время тоже. На данный момент обработка данных занимает порядка 8 секунд. Неудобство в том, что в течении этого времени "блокируется" выполнение всех остальных действий программы. Что можно придумать, чтобы во время обработки данных можно было производить остальные действия с программой?


 
DrPass ©   (2007-11-08 16:25) [1]

Начать читать про многопоточность


 
Anatoly Podgoretsky ©   (2007-11-08 16:33) [2]

> ЗфдЗфднср  (08.11.2007 16:23:00)  [0]

Обрабатывать сообщение или переходить на потоки, если одновременно должно выполняться несколько разных задач.


 
Ega23 ©   (2007-11-08 16:55) [3]

Способ 1:
Внутри цикла обработки "некоторых данных" вставиь Application.ProcessMessages
Хорошо: дёшево и сердито
Плохо: Можно нарваться на нефиговые проблемы.

Способ 2:
Обрабатывать данные в отдельном потоке.
Хорошо: идеологически более правильно
Плохо: судя по твоему уровню, для тебя будет сложная реализация.


 
ЗфдЗфднср   (2007-11-08 17:40) [4]

DrPass, Anatoly Podgoretsky, Ega23 спасибо за советы.
Ega23, я не уверен, что по одному посту можно судить об "уровне" человека.
В любом случае большое спасибо. Опробую оба способа.


 
Ega23 ©   (2007-11-08 18:01) [5]


> Ega23, я не уверен, что по одному посту можно судить об
> "уровне" человека.


Ну просто если ты не знаешь что делать в ситуации "в течении этого времени "блокируется" выполнение всех остальных действий программы" - то реализация отдельного потока и все аспекты его реализации для тебя в данный момент вызовут массу других вопросов.

Я не имел ввиду "уровень чайника". Может ты, например, офигенный специалист по Oracle. Просто вот конкретно в этом вопросе - твой уровент пока слабоват.
Что я и сказал в своём посте.
Короче, это не наезд.



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

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



Память: 0.46 MB
Время: 0.014 c
15-1193772970
korneley
2007-10-30 22:36
2007.12.02
Фича/глюк/(не)задокументированная возможность ?


15-1193945817
Evanescence
2007-11-01 22:36
2007.12.02
DHCP и прямое подключение компьютеров


15-1194180366
atruhin
2007-11-04 15:46
2007.12.02
Флейм. Отношение к Open Source компонентам.


15-1194010490
oldman
2007-11-02 16:34
2007.12.02
Где бы прикупить акций Гугля?


15-1193597283
artkil
2007-10-28 21:48
2007.12.02
Вопрос по созданию пиринговой сети




   Наверх