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

Подвисание программы   Найти похожие ветки 

← →
XeON ©   (2006-03-21 00:49) [0]

Доброго всем времени суток. Помогите пожалуйста решить проблему. Программа читает побайтово бинарный файл, накручивая при этом ProgressBar. И возникает следующая ситуация: ПрогрессБар идёт, а форма - наглухо висит! После того, как чтение завершено - форма снова отвисает. Подскажите пожалуйста, как избавиться от "Подвисания". Всем благодарен за внимание.


← →
Piter ©   (2006-03-21 00:56) [1]

Читать файл в дополнительном потоке, а не в основном, в котором происходит прорисовка формы.


← →
XeON ©   (2006-03-21 01:12) [2]

А вот с этого момента поподробнее пожалуйста! Я читаю файл как File of Char. Т.к. Читать файл как поток - не представляется возможным для моих целей.


← →
ANB ©   (2006-03-21 01:42) [3]


> XeON ©   (21.03.06 01:12) [2]

Читать файл в цикле. В тело цикла воткнуть Application.ProcessMessages;
Если будет сильно тормозить, то Application.ProcessMessages; выдавать не каждую итерацию, а, например, каждую 10-ю. Но лучше сразу читать большими кусками.


← →
Piter ©   (2006-03-21 01:48) [4]

XeON ©   (21.03.06 1:12) [2]

читать не как поток, а В ДРУГОМ ПОТОКЕ, в другой НИТИ, если угодно.

Информации на эту тему в интернете - вагон и маленькая тележка.


← →
Германн ©   (2006-03-21 02:43) [5]


> XeON ©   (21.03.06 00:49)  
>
> Доброго всем времени суток. Помогите пожалуйста решить проблему.
>  Программа читает побайтово бинарный файл, накручивая при
> этом ProgressBar. И возникает следующая ситуация: ПрогрессБар
> идёт, а форма - наглухо висит! После того, как чтение завершено
> - форма снова отвисает. Подскажите пожалуйста, как избавиться
> от "Подвисания". Всем благодарен за внимание.
>

Советы в [3] и [4] тебе несомненно могут помочь!
Но только в том случае, если их авторы правильно "стелепировали" твою задачу.
Ведь ты не привёл свой код! Который "якобы" работает, но не так как тебе хочется.


← →
XeON ©   (2006-03-21 11:59) [6]

Спасибо большое братья по разуму! Application.ProcessMessages; помогло! Работает всё на ура! И не тормозит. Даже кнопку отмне селать можно :)

Но ещё хотелось бы уточнить... А можно ли всё это дело загнать под KOL? Ведь в KOL нет Application.ProcessMessages;...

Всм ещё раз БОЛЬШОЕ спасибо за внимание!


← →
XeON ©   (2006-03-23 01:07) [7]

А мне кажется это надо было в конференцию KOL перенести!


← →
Германн ©   (2006-03-23 02:30) [8]


> XeON ©   (23.03.06 01:07) [7]
>
> А мне кажется


Когда "кажется" креститься надо! Это всем известно! :-)

> Но ещё хотелось бы уточнить... А можно ли всё это дело загнать
> под KOL? Ведь в KOL нет Application.ProcessMessages;...


> А мне кажется это надо было в конференцию KOL перенести!


А почему сразу не задал вопрос в конференции KOL?
Темнишь ты что-то.


← →
XeON ©   (2006-04-01 22:15) [9]


> Германн

Ну ты прям доследователь... Лучше бы по делу что сказал, а не рассказывал, что мне делать! Как сказал Н. Фоменко: "Не говорите мне, что делать - и я не скаду Вам, куда вам идти".



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

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



Память: 0.47 MB
Время: 0.027 c
15-1143366721
inri13666
2006-03-26 13:52
2006.04.16
Как добовлять новые компоненты в BDS2006


2-1143807186
Der Nechk@ssoff
2006-03-31 16:13
2006.04.16
Canvas


2-1143995705
Bruce
2006-04-02 20:35
2006.04.16
PChar утечка памяти


8-1131908988
Toxa_ua
2005-11-13 22:09
2006.04.16
Как в Memo и ListBox вставить фоновый рисунок?


2-1143653503
tyo
2006-03-29 21:31
2006.04.16
асинхронный запуск StoredProc через TADOCommand




   Наверх