Вниз
Скачать: 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 вся ветка

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



Память: 0.47 MB
Время: 0.01 c
3-19999
tramp
2003-06-11 17:22
2003.07.07
Заполнение таблицы(TADOTable) информацие из потока(TADOQuery)


1-20100
clickmaker
2003-06-23 19:13
2003.07.07
TTreeNode.MakeVisible не прокручивает TreeView


7-20320
orion_st
2003-04-24 18:27
2003.07.07
OLE Automation


3-19948
Chayan
2003-06-11 11:54
2003.07.07
Помогите выбрать сервер БД


3-19980
Artemij
2003-06-13 10:52
2003.07.07
DBListBox




   Наверх