задержка в 1 сек делфи

Статус
В этой теме нельзя размещать новые ответы.

Bicdibus

Участник
Регистрация
5 Мар 2010
Сообщения
497
Реакции
7
как организовать задержку в 1 секунду на делфи
 
sleep(1000);
 
Пример реализации своего аналога sleep
procedure gsleep(interval:integer);
var
settime:integer;
begin
settime:=GetTickcount+interval;
while (settime<GetTickcount) do continue;
end;
Иногда в потоках sleep становится невероятным злом, вот такие кривые костыли помогают.
PS возможны ошибки так как писал из головы а на делфе практически не пишу уже.
 
Эта строчка - зло:
Код:
while (settime<GetTickcount) do continue;

Будет сильно грузить процессор, лучше уже так:
Код:
while (settime<GetTickcount) do
begin
  sleep(25);
end;
 
Лучше таки собітие на таймер ставь.
В крайнем случае sleep(1000) но прога тупо повисает на данный промежуток времени.
Лечится этим: Application.Processmessages
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху