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

Как распараллелить два процесса?   Найти похожие ветки 

 
Hatawa   (2003-10-02 07:37) [0]

Пока моя прога разархивирует некоторые данные, мне бы хотелось чтобы появилось окно со статус баром, которое бы параллельно отображало сколько уже разархивировано + какой файл разархвируется на данный момент. В общем вопрос следующий: как распараллелить эти два процесса? Знаю, что без потоков здесь не обойтись. Пробовала некоторые варианты, но не получается.. Может посоветуете чего нибудь?


 
MBo ©   (2003-10-02 07:45) [1]

стандартный подход - запускаешь дополнительный поток (TThread), который занимается разархивацией, периодически сообщая главному потоку с помощью Synchronize состояние дел.


 
Radionov Alexey ©   (2003-10-02 07:47) [2]

Что именно не получается?
Не обновляется информация на "окне со статусбаром"?
Попробуй время от времени вызывать Application.ProcessMessages;

Если хочешь в двух потоках реализовать, попробуй организовать обмен сообщениями между ними, либо в потоке, занятым разархивированием, заведи две переменные с именем файла и процентом выполнения. Информирующий пользователя поток будет проверять эти переменные и обновлять информацию.


 
Hatawa   (2003-10-02 07:58) [3]

спасибо.
проблема была в том, что я не совсем была уверенна сколько и на кого заводить поток...



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

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



Память: 0.45 MB
Время: 0.026 c
3-40267
АлеКс
2003-09-22 05:52
2003.10.13
ADO


1-40408
Falt
2003-09-30 22:14
2003.10.13
Промежутки


3-40310
evgeniy
2003-09-22 11:52
2003.10.13
Query.Insert


3-40260
ViKS
2003-09-23 09:22
2003.10.13
Как установить путь к базе данных без alias. Все равно непонятно!


4-40750
Dolf
2003-08-08 22:07
2003.10.13
Edit в Html страницах




   Наверх