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

Интересный Вопрос   Найти похожие ветки 

← →
S@shka   (2002-06-21 19:01) [0]

Товарищи. Наткнулся вот на с какой проблемой.
Предположим есть клиент-сервер, бщающиеся по определенному протоколу.
клиент задает вопросы и сервер на них овечает (допустим).
Клиент - форма с Таймером. (реализованы на TNMMSGServ TNMMsg)
Клиент отсуает запрос активизируется таймер и он через определенное время опрашивает переменную, которая устанавливается при событии OnMsg TNMMsgServ
Так вот никаких проблем нет если процедура выглядит так...
procedure DoSomeThing
begin
......
NMMsgPostIT (asString); // отправяем команду а сервер
Timer1.Enabled:=true; // активизируем таймер
end;
Одноко необходимо сделать цикл действий и вот тут глюк (естественно)
procedure DoSomeThingMore
begin
......
for i:=1 to N do begin
NMMsgPostIT (asString); // отправяем команду а сервер
Timer1.Enabled:=true; // активизируем таймер
end;
end;
здесь уже нет корректной работы. Т.к. необходимо чтобы клиент полал строку, затем через время (таймера) посмотрел а не пришел ли ответ, после этого послал следующую коману и т.д.
Как сделать ЗАДЕРЖКУ необходимую.
КТО ЧТО НИТЬ ПОНЯЛ помогите как говориться чем можите.
С уважением Александр.


← →
Cobalt ©   (2002-06-22 11:02) [1]

Я так понимаю, что вопрос ао алгоритму...
Если время ответа сравнимо мало, то можнл делать так:
цикл от 1 до Н
(посылаем команду;
АктивизируемТаймер
пока нет ответа
ждем;
//типа, ответ пришел - выходим из ожидания
СмотримОтвет
)//посылаем след. команду /\



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

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



Память: 0.45 MB
Время: 0.01 c
1-3416
CCCatch
2002-08-22 18:16
2002.09.02
Как вытащить первые и поледние символы из Edit1??


1-3456
HemeC
2002-08-20 19:04
2002.09.02
ошибка Exception EDBEngineError............! и вопрос........!


6-3543
SDomsk
2002-06-24 12:52
2002.09.02
широковещательный запрос


14-3578
etho
2002-08-05 15:17
2002.09.02
Как в Delphi создавать свои классы?


14-3604
vile
2002-08-07 16:07
2002.09.02
Delphi & Excel




   Наверх