|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Выполнение цикла с задержкой
Есть у меня некая процедура, которую нужно выполнять в цикле, но с задержкой. Как эту задержку внести в цикл? Если сделать просто:
Код:
procedure Sending; var i: Integer; Begin for i:= 0 to database.Count - 1 do sent_msg; sleep(10000); End; |
#2
|
|||
|
|||
application.ProcessMessages; может исправить проблему?
|
#3
|
||||
|
||||
Цитата:
Код:
procedure Sending; var i: Integer; begin for i := 0 to database.Count - 1 do begin sent_msg; Sleep(100); Application.ProcessMessages; end; end; |
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
arach (06.10.2012)
|
#4
|
|||
|
|||
Задержка заработала, но форма очень сильно зависает sleep(10000);
Если выполнить в отдельном потоке висеть форма не будет? |
#5
|
||||
|
||||
Цитата:
Код:
var j: Integer; begin for j := 1 to 100 do begin Sleep(100); Application.ProcessMessages; end; end; Цитата:
|
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
arach (06.10.2012)
|
#6
|
|||
|
|||
Если я напишу sleep(100), то меня забанит сервер
|
#7
|
|||
|
|||
Создал отдельный поток - все отлично!
|
#8
|
||||
|
||||
Цитата:
Код:
for i := 1 to database.count - 1 do sent_msg; for j := 1 to 100 do begin Sleep(100); Application.ProcessMessages; end; end; З.Ы. все же лучше использовать потоки. jmp $ ; Happy End! The Cake Is A Lie. |