Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.13;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.022 c
11-40326
miek
2003-01-30 21:29
2003.10.13
избыточные перерисовки компонентов


1-40404
Raduga
2003-10-01 11:02
2003.10.13
Мерцание при перерисовке


3-40306
alextov
2003-09-22 10:01
2003.10.13
Не могу изменить запись - ORA-01403: no data found


1-40413
ilka
2003-09-30 19:06
2003.10.13
Как узнать есть ли сервис и его текущее состояние(stop|start)?


3-40230
bobtubob
2003-09-22 17:03
2003.10.13
Как в DBGrid изменить цвет выделения (select)