Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Сети";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
1-3505
Степан
2002-08-21 13:46
2002.09.02
Строку в ячейке DBGrid в несколько линий


4-3657
Новенький в Делфи
2002-06-29 23:39
2002.09.02
как лучше использовать dll?


7-3632
Alexcool
2002-06-20 15:35
2002.09.02
Как прочитать и изменить PATH?


14-3586
paul_shmakov
2002-08-06 13:23
2002.09.02
дождались! microsoft частично открывает исходники


3-3307
Brute
2002-08-13 13:57
2002.09.02
Отсутствие драйвера INTERBASE при создании алиаса





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский