Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.07;
Скачать: CL | DM;

Вниз

ждать завершение процедуры   Найти похожие ветки 

 
maxon   (2003-06-24 11:15) [0]

как запустить процедуру и подождать её завершение?


 
Anatoly Podgoretsky ©   (2003-06-24 11:20) [1]

Оно так и есть.


 
Palladin ©   (2003-06-24 11:22) [2]

сплошной орешник


 
maxon   (2003-06-24 11:24) [3]

понимаю :-)), надо было по подробнее

вобщем я перехватываю сообщение на закрытие сессии и здесь вызывается onclose а она идёт в своёи потоке, так что получяется они выполняются паралельно, так вот надо подождать пока выполнится ряд действия в этом onclose, а sleep не подходит так как он всё замораживает


 
maxon   (2003-06-24 11:28) [4]

принудительно окно обновляю в цикле, но оно обновляется только однажды

close;
for i:=1 to 5 do begin
update;
sleep(1000);
end;
Msg.result:=1;

а в onclose включается таймер, а в таймере идёт обратный отсчёт и в label пишется 5..4..3..


 
Palladin ©   (2003-06-24 11:29) [5]

заведи переменную-флаг


 
maxon   (2003-06-24 11:32) [6]

т.е. гонять цикл пока флаг не примет true? это маленько не красиво, может есть какие нить другие пути?


 
Palladin ©   (2003-06-24 11:35) [7]

нет я не понял! ты хочешь ждать или не хочешь?


 
maxon   (2003-06-24 11:37) [8]

хочу )). приколисты блин, ну ладно приму к сведению


 
Palladin ©   (2003-06-24 11:40) [9]

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


 
maxon   (2003-06-24 11:42) [10]

спасибо, остановлюсь на этом


 
Семен Сорокин ©   (2003-06-24 11:46) [11]

2maxon
для потока используй WaitForSingleObject


 
Palladin ©   (2003-06-24 11:51) [12]


> Семен Сорокин © (24.06.03 11:46)

ему не конца потока ждать надо, а окончания работы процедуры в потоке... это разные вещи


 
Zelius ©   (2003-06-24 11:55) [13]

передавай в эту процедуру Event и в конце процедуры его устанавливай, а там где надо ждать вызывай WaitForSingleObject...



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

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

Наверх




Память: 0.49 MB
Время: 0.011 c
4-20351
circul
2003-05-03 16:06
2003.07.07
Проблема с прорисовкой клиентской обл. окна.


3-19984
DreamDesire
2003-06-13 10:27
2003.07.07
Необходимо создать что-то наподобие SQL-builder


7-20333
chernoruk
2003-04-23 20:39
2003.07.07
Как же наконец программно звук убить?


6-20186
Tenrai
2003-04-04 06:11
2003.07.07
Новое окно при клике на ссылку в TWebBrowser


11-20027
Alexander
2002-10-31 13:55
2003.07.07
Вопрос по KOLLabel: у меня она лежит на панели с выравниванием