как известно, при отсылке текстовых сообщений, близко расположенных по времени, они сливаются в одно (если длинное то приходит несколькими частями). А вот в режиме Stream такого не происходит - они просто не приходят (или не отсылаются?) вообще ни одно code_10272.txt . Если в таймере поставить AutoStop=2 и снять DOUBLE, то 20 ms вполне хватает для нормальной работы (в длинных сетях и на больших сообщениях не проверялось). Есть предложение - научить клиента докладывать о выполнении поручений только после их выполнения (а то хаб-то ему верит)..
Этот топик читают: Гость
Ответов: 3851
Рейтинг: 159
|
|||
карма: 0 |
| ||
файлы: 1 | code_10272.txt [2.8KB] [166] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Андрей. писал(а): Есть предложение - научить клиента докладывать о выполнении поручений только после их выполнениячто это значит? Андрей. писал(а): А вот в режиме Stream такого не происходитэто не режим, а способ отсылки данных. Отличается от всех прочих тем, что в соукет передается количаство отсылаемых байт, которое и проверяется на принимающей стороне - пока все байты не будуи приняты ничего в поток выведено не будет |
|||
карма: 27 |
|
Ответов: 1161
Рейтинг: 160
|
|||
Андрей. писал(а): они сливаются в одно (если длинное то приходит несколькими частями)Тоже бывало - решил при помощи символа-разделителя |
|||
карма: 0 |
|
Ответов: 3851
Рейтинг: 159
|
|||
Dilma писал(а): что это значит?Судя по взаимонепониманиям, я что-то не так делаю хочу узнать - как это делается.. |
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Андрей., это называется работа сокета в блокирующем режиме. Режим этот выставляется в настройках сокета при его создание. В HiAsm не использовался до сего моменту ввиду ненадобности. Если честно не совсем понимаю, каким образом теряются данные в протоколе с гарантированной доставкой Как правило такая недоставка данных приводит к дисконнекту сокета после чего делается повторное соединение и отправка.
|
|||
карма: 27 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Андрей., да понял про что ты имел ввиду.
|
|||
карма: 4 |
|
Ответов: 3851
Рейтинг: 159
|
|||
продолжаем разговор
вот такая code_10303.txt схема работает. Если отправлять 2 сообщения подряд с одного клиента, то TCP_ServerEx тоже ничего не выдаёт. Напрашивается вывод, что причина - клиент, а именно - не разруливается совместный доступ при рестарте потока (имхо неспециалиста).. |
|||
карма: 0 |
| ||
файлы: 1 | code_10303.txt [2.1KB] [172] |
7