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

Вниз

indiclient.lastcmdresult   Найти похожие ветки 

 
malyar   (2007-08-21 22:34) [0]

всем привет
есть код
------------------------------
idclient.sendcmd(....)
idclient.lastcmdresult
------------------------------
народ подскажите может ли происходить выход из lastcmdresult
раньше чем сервер ответит на запрос sendcmd,
если idclient.readtimeout=0 и на форму помещен инди антифризе.
если может то при каком условии ?


 
Сергей М. ©   (2007-08-22 08:35) [1]


> выход из lastcmdresult


Вообще-то это свойство.

Все что происходит при чтении этого св-ва - это чтение приватного значения поля FLastCmdResult.


 
Сергей М. ©   (2007-08-22 09:19) [2]

Вопрос поставлен неверно.

На строчку idclient.lastcmdresult можно попасть только и только в том случае, когда уже получен ответ сервера.

Антифриз здесь вообще ни причем.


 
malyar   (2007-08-23 00:04) [3]

в общем ситуация такая
моя процедура в которой используются
sendcmd и lastcmdresult
вызывается по таймеру с интервалом 50мс,
передаётся камонда sendall или sendto (выбираются по randomize),
сервер на них отвечает либо sendall ok  либо sendto ok (пока ничего другого он не делает)
и иногда происходит такая вещ :
на запрос sendall получаю ответ sendto ok  и наоборот
если подключено менее 10 клиентов (array of tidtcpclient)
этого не происходит
а чем больше клиентов тем чаще кривые ответы.
складывается такое ощущение что пока сервер думал как ответить на первый запрос то успел получить и ответить на второй от одного и тогоже клиента


 
Германн ©   (2007-08-23 00:31) [4]


> в общем ситуация такая
> моя процедура в которой используются
> sendcmd и lastcmdresult
> вызывается по таймеру с интервалом 50мс,
>

Ох как я не люблю таких реализаций! При возможности использования асинхронной работы использовать таймеры + синхронные методы? Тут может сложится масса "очучений". Лучше уж обкуриться. :(
А по сути надо разбираться. Вести логи как на сервере, так и на клиентах.


 
Сергей М. ©   (2007-08-23 08:10) [5]


> malyar   (23.08.07 00:04) [3]


У тебя ошибка в 17-й строке.

Инди работает в блок.режиме, асинхронность исключена.


 
Сергей М. ©   (2007-08-23 08:12) [6]


> malyar   (23.08.07 00:04) [3]


Хотя - стоп...
Вру.

Ты антифриз упомянул и таймер.
С учетом этих обст-в ситуация с "перепутом" запросто возможна.

Меняй логику.


 
malyar   (2007-08-24 23:24) [7]

to сергей
данная логика выбрана специально чтоб выявить возможные баги ,
таймер использовался в качестве БОТОВОДА.

антифризе и таймер действительно не совместимы именно их совокупность
и давала непредсказуемость поведения проге !!



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

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

Наверх





Память: 0.46 MB
Время: 0.06 c
15-1187766946
koha
2007-08-22 11:15
2007.09.16
Все ли GSM устройства имеют аймиай?


15-1187683863
vajo
2007-08-21 12:11
2007.09.16
Покупка лицензионных Win


15-1187266184
Nic
2007-08-16 16:09
2007.09.16
2 версии PHP на 1 сервер


8-1165861296
DriveR_F
2006-12-11 21:21
2007.09.16
Работа с TImage и GIF


3-1179271692
ArchValentin
2007-05-16 03:28
2007.09.16
Работа с таблицами в базе Microsoft Access





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский