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

Экстренное завершение цикла   Найти похожие ветки 

← →
Ryser   (2002-10-05 16:53) [0]

Здравствуйте! Извините за ламерский вопрос, но...
Есть цикл, занимающий много времени (1 процедура). Необходимо на некоторое событие (2 процедура) его (цикл) завершить. Была идея использовать метки, но не получается обьявить глобальную метку. Посоветуйте, пожалуйста!


← →
Esu ©   (2002-10-05 16:55) [1]

Хм... break ? :)


← →
Suntechnic ©   (2002-10-05 18:57) [2]

Объявляешь флажок(глобальный или как атрибут класса). В первой процедуре регулярно проверяешь флажок и столь же регулярно вызываешь Application.ProcessMessages; Ну а по некому событию устанавливаешь этот флажок.


← →
alxx ©   (2002-10-05 20:21) [3]

А вообще, Thread надо использовать


← →
Rouse_ ©   (2002-10-05 20:34) [4]

Выход из процедуры Exit; это если у тебя несколько вложенных циклов и Break; не помогает, можно сделать еще выход по меткам, но это настолько всеми не приветствуется, что даже обьяснять не буду

Желаю успехов


← →
rhf ©   (2002-10-05 22:45) [5]

как сказал Suntechnic :) делать так
.......
var
quit:boolean = FALSE;
.......
.......
procedure n1;
begin
quit:=FALSE;
while not quit do
begin
// какое-то действие
application.ProcessMessages
end;
end;
.......
.......
procedure n2;
begin
quit:=TRUE
end;


← →
Anatoly Podgoretsky ©   (2002-10-05 22:55) [6]

Цикл то у тебя какой?



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

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



Память: 0.46 MB
Время: 0.011 c
7-45608
V.Turecky
2002-08-03 18:31
2002.10.14
Перезагрузка/Выключение (DOS)


14-45549
Сатир
2002-09-19 21:49
2002.10.14
Коммандная строка


14-45579
.nuke
2002-09-20 00:14
2002.10.14
Администратору... ( веб-мастеру )


1-45379
korn
2002-10-06 15:53
2002.10.14
Новые компоненты D6


14-45581
Феликс
2002-09-20 21:23
2002.10.14
Если не сложно! Киньте ссылку на сайт крупной промышленной комп.




   Наверх