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

Вниз

Что лучше применить - отдельный Thread или ProcessMessages?   Найти похожие ветки 

 
GuAV ©   (2004-08-02 19:56) [0]

В моем приложении во время поиска файла показывается окно с именем текущего файла и кнопкой отмена. Чтобы это все работало нужно обрабатывать сообщения во время поиска файла. Как лучше это сделать? Через Application.ProcessMessages после каждого файла? Выполнять Application.ProcessMessages после если прошло n милисекунд? Или вынести поиск в отдельный TThread?


 
panov ©   (2004-08-02 20:05) [1]

Лучше вынести в отдельный поток. В этом случае основной поток может заниматься другими делами...


 
GuAV ©   (2004-08-02 20:12) [2]

panov ©   (02.08.04 20:05) [1]

А можно ещё аргументы почему?
Ведь кроме обработки сообщений перерисовки и нажатия кнопки у него дел нет.


 
GuAV ©   (2004-08-02 20:28) [3]

Ну хорошо, сделал поток, теперь вопрос по Synchronize. Через него надо вызывать обращения к VCL из execute или из конструктора тоже?


 
panov ©   (2004-08-02 20:35) [4]

Только из поточной процедуры - Execute.


 
GuAV ©   (2004-08-02 21:00) [5]

Спасибо.

Кстати, я посмотрел как в других приложениях - в Nero, в Total Commander, в проводнике - оказалось через поток только в проводнике. В тех что не через поток если взять окно поиска за заголовок, процесс приостаавливается. Поэтому сделаю через поток. Еще раз спасибо, Панов.


 
TUser ©   (2004-08-02 21:34) [6]

Тут недавно обсуждали вопрос, что нехорошо грузить систему лишним потоком. В простых слуаях - лучше РМ.


 
Fay ©   (2004-08-02 21:52) [7]

Простой случай - это когда юзеру фиолетово. Мечта!! 8)


 
GuAV ©   (2004-08-02 23:25) [8]

Короче, через PM уже сделано. Доделаю ещё через поток, тогда сравню.

> Тут недавно обсуждали вопрос, что нехорошо грузить систему
> лишним потоком.

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

> Простой случай - это когда юзеру фиолетово. Мечта!! 8)

Не фиолетово. Именно он и попросил сделать эту фичу.



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
1-1091537647
ligor
2004-08-03 16:54
2004.08.15
combobox и hint


1-1091081401
ksa2002
2004-07-29 10:10
2004.08.15
combobox в Stringgride


3-1090414607
starik30
2004-07-21 16:56
2004.08.15
TpFIBStoredProc vs TpFIBDataSet


3-1090486803
ZedeS
2004-07-22 13:00
2004.08.15
Номер строки в DBGrid


14-1090837506
Snip
2004-07-26 14:25
2004.08.15
Подарок на д.р.