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

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



Память: 0.46 MB
Время: 0.025 c
1-1091134257
nick_mas
2004-07-30 00:50
2004.08.15
Как создать свою кнопку в Delphi?


3-1090481956
serg128
2004-07-22 11:39
2004.08.15
Как в вычислимом (Calculated) поле задать маску отображения чисел


4-1087569884
Vlad_ua
2004-06-18 18:44
2004.08.15
Как поставить хук на spoolsv.exe ?


11-1078401198
ssk
2004-03-04 14:53
2004.08.15
Printers - из VCL в KOL


1-1091186987
Вика
2004-07-30 15:29
2004.08.15
пересечения диапазонов




   Наверх