Вниз
Скачать: 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.014 c
9-40220
Арм
2003-03-03 04:17
2003.10.13
Выбор объектов в OpenGL


4-40730
Onyx
2003-08-08 13:08
2003.10.13
КОНТЕКСТНОЕ МЕНЮ!!!


7-40696
waw
2003-07-25 14:52
2003.10.13
Комманда mount и блокировка CDROM


11-40323
balbes
2003-02-02 17:45
2003.10.13
Try Accept B delphi6


1-40347
Темчик
2003-10-01 23:04
2003.10.13
StringGrid




   Наверх