Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.07.07;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
7-20336
Yanis
2003-04-24 14:29
2003.07.07
Как написать на экране?


14-20309
Тих
2003-06-21 00:39
2003.07.07
Что это такое?


1-20080
maxon
2003-06-24 11:15
2003.07.07
ждать завершение процедуры


1-20101
avkiev
2003-06-19 18:29
2003.07.07
Проблема с вызовом функции


6-20185
DeadMeat
2003-04-29 15:26
2003.07.07
FTP без компонентов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский