Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.05;
Скачать: CL | DM;

Вниз

Помогите разобраться с задержкой   Найти похожие ветки 

 
_alex_   (2004-11-22 14:38) [0]

Добрый день!
Мне необходимо вставлять по ходу функции временные задержки, их я реализую с помощью процедуры:

procedure Delay(Seconds, MilliSec: Word);
var
  TimeOut: TDateTime;
begin
tmpCountDelay:= 0;
TimeOut:= Now + EncodeTime(0, Seconds div 60,
         Seconds mod 60, MilliSec);
while Now < TimeOut do
 Application.ProcessMessages;

В половине случаев вместо 1,5 секунд эта функция выполняется все 3–5 секунд.
Из-за чего это происходит?
Now или ProcessMessages?


 
ламер ©   (2004-11-22 14:41) [1]

используй либо Sleep(), либо (если уж так нужен цикл) GetTickCount().


 
Skyle ©   (2004-11-22 14:43) [2]

> _alex_   (22.11.04 14:38)
> Из-за чего это происходит?
Гвозди с микроскопом не сочетаются.

Используй >  [1] ламер ©   (22.11.04 14:41) либо таймер.


 
КаПиБаРа ©   (2004-11-22 15:03) [3]

Удалено модератором


 
Piter ©   (2004-11-22 15:43) [4]

Задержки в программе не нужны вообще. Это говорит о неправильном алгоритме работы


 
ggs   (2004-11-22 16:57) [5]

Удалено модератором


 
Digitman ©   (2004-11-22 17:04) [6]

Удалено модератором


 
Yanis ©   (2004-11-22 18:05) [7]


procedure Wait(T: Integer);
var
 h:THandle;
begin
 H := CreateEvent(nil,true,false,"");
 WaitForSingleObject(h,T);
 CloseHandle(h);
end;


Использование:


Wait(1000); // одна секунда



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

Текущий архив: 2004.12.05;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.04 c
14-1100235248
ИМХО
2004-11-12 07:54
2004.12.05
Ниггериец в составе сборной Украины?


10-1069923058
hellmachine
2003-11-27 11:50
2004.12.05
Программный выбор dll с com-классами


8-1094225585
AzIN
2004-09-03 19:33
2004.12.05
время


1-1100853835
Ivolg
2004-11-19 11:43
2004.12.05
Данные


4-1098342720
gris
2004-10-21 11:12
2004.12.05
Простой вопрос! Подскажите, как узнать серийный номер сетевой кар