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

Вниз

Процедура Delay   Найти похожие ветки 

 
Eraser ©   (2002-01-21 12:34) [0]

Люди подкажите почему данная процедура не работает в TThread (цикла нет выполняется толко 1 раз вне зависимости от того сколько msecs) , хотя в обычной форме все выпллняется:

procedure TMicro1Thread.Delay(msecs : Longint);
var
FirstTick : longint;
begin
FirstTick:=GetTickCount;
repeat
Application.ProcessMessages;
until GetTickCount-FirstTick >= msecs;
end;


 
Dimka Maslov ©   (2002-01-21 12:48) [1]

В потоке не нужен Application.ProcessMe


 
Eraser ©   (2002-01-21 12:50) [2]

мне нужно сделать задержку на 50 мс (если через sleep -тоже самое)


 
Dimka Maslov ©   (2002-01-21 13:00) [3]

А ты откуда процедуру Delay вызываешь?


 
Eraser ©   (2002-01-21 13:02) [4]

procedure TMicro3Thread.Execute;
begin
<что-то>
delay(50);
<что-то>
end;


 
Digitman ©   (2002-01-21 13:02) [5]

Используй SleepEx

The SleepEx function causes the current thread to enter a wait state until one of the following occurs:

· An I/O completion callback function is called
· An asynchronous procedure call (APC) is queued to the thread.
· The time-out interval elapses



DWORD SleepEx(

DWORD dwMilliseconds, // time-out interval in milliseconds
BOOL bAlertable // early completion flag
);


 
Dimka Maslov ©   (2002-01-21 13:04) [6]

А задержку чего на на 50мс ты хочешь сделать? Потока TMicro3Thread или основного потока приложения?


 
Eraser ©   (2002-01-21 14:19) [7]

>Dimka
потока Tmicro3Thread

И еще если пробую delay(100) и более то все работает


 
Dimka Maslov ©   (2002-01-21 15:23) [8]

50мс слишком маленькое время, по этому сразу срабатывает условие выхода из цикла


 
Eraser ©   (2002-01-21 15:26) [9]

но ведь если нет поотка то все работает



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
1-8855
asdf
2002-01-20 23:36
2002.02.04
Как сделать так, чтобы один из Tabsheet-ов в pagecontrole стал disabled?


6-8966
Dup
2001-11-12 10:37
2002.02.04
IP юзера


1-8868
SlavaNew
2002-01-14 12:50
2002.02.04
Как передать иконку?


1-8934
Хлор
2002-01-18 03:21
2002.02.04
Люди... помогите!!! Как удалить выбранный item из ListBox


1-8901
Ольга
2002-01-16 14:28
2002.02.04
Генератор паролей