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

Передача динамического массива через Сокеты. Пример....   Найти похожие ветки 

 
Abzetdin   (2001-11-19 19:36) [0]

Существует ли ограничение относительно размера данных динамического массива передаваемых за один раз через стандартный сокет.
Дело в том, что независимо от сумарного размера передаваемых данных, принимаемые не превышают 8192 byte.
Т.е. если даже TotalBytesSend > 8192, то TotalBytesReceive всегда равна 8192

TotalBytesSend:= ServerSocket1.Socket.Connections[0].SendBuf(SendMatrix^, BufSize);

TotalBytesReceived:= Socket.ReceiveLength;
Socket.ReceiveBuf(SendMatrix^, BufSize);

В чём тут дело? Или существует ли свойство регулирующее размер буфера сокета?

Заранее спасибо.


 
panov ©   (2001-11-19 20:26) [1]

socket сам делит поток данных на пакеты, размер которых установлен в реестре.
К сожалению, название параметра не помню.


 
Abzetdin   (2001-11-19 20:32) [2]

Спасибо, ну это понятно, а чем объяснить то что общтй размер принятых данных никак не не превышает 8192 байт. Напомню, что я передаю динамический массив. Код примера приведен в моем предыдущем вопросе.


 
panov ©   (2001-11-19 20:45) [3]

На приемном конце данные приходят не одним пакетом, а также разбитые на на те же самые пакеты длиной 8192.

Т.е., если при посылке не приходится беспокоиться о разбивке данных, то при приеме каждую порцию нужно обрабатывать отдельно.


 
Abzetdin   (2001-11-19 21:39) [4]

Огромное спасибо, буду искать соответствующее свойство.



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

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



Память: 0.45 MB
Время: 0.011 c
1-32196
RUS1
2002-01-29 12:41
2002.02.11
Как можно удалить сразу все файлы и подкаталоги в директории


14-32344
Sheva
2001-12-20 15:30
2002.02.11
Подскажите, пожалуйста.


3-32163
Eduard
2002-01-16 13:20
2002.02.11
SQLClientDataSet, Params


14-32317
Denis P
2001-12-20 22:26
2002.02.11
Легкие Деньги в Москве


4-32368
Oxy2
2001-11-01 00:30
2002.02.11
Как конвертировать pst-файлы (OutLook2000) в dbx-файлы (OutLook Express 5)




   Наверх