Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];

Вниз

Что лучше применить - отдельный 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.035 c
14-1090809941
ProgC
2004-07-26 06:45
2004.08.15
Какая должность лучше?


11-1078154025
ctapik
2004-03-01 18:13
2004.08.15
Занимаемая память программы (Task manager)


14-1091093968
stone
2004-07-29 13:39
2004.08.15
Перлыы коментаторов :))


14-1090521866
juiceman
2004-07-22 22:44
2004.08.15
Какие вы знаете ядра Windows ?


1-1091270810
volser
2004-07-31 14:46
2004.08.15
Delphi&Word





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский