PureBasic

ReceiveNetworkData()

Синтаксис

Result = ReceiveNetworkData(Connection , *DataBuffer , DataBufferLength)

Описание


Получает необработанные данные от указанного соединения клиента. Эта функция может использоваться как клиентскими, так и серверными приложениями и должна вызываться только после получения события #PB_NetworkEvent_Data.

Параметры

Connection Идентификатор сетевого соединения, от которого должны быть получены данные. На стороне сервера параметр 'Connection' содержит идентификатор соединения клиента, отправившего данные (т.е. это результат функции EventClient()). На стороне клиента параметр 'Connection' содержит значение, возвращаемое функцией OpenNetworkConnection().
*DataBuffer Адрес буфера памяти, предназначенного для приема необработанные данных. Буфер можно выделить с помощью функции AllocateMemory().
DataBufferLength Длина буфера памяти, предназначенного для приема необработанные данных.

Возвращаемое значение

Возвращает количество прочитанных байтов. Если значение 'Result' равно DataBufferLength, значит, есть ещё не прочитанные данные. Если произошла ошибка соединения (нерабочая ссылка, соединение закрыто сервером и т.д.), значение 'Result' будет -1.

Комментарии

Для соединений UDP максимальная длина буфера 'DataBufferLength' 2048 байтов.
Для соединений TCP максимальная длина буфера 'DataBufferLength' 65536 байтов.

См. также

NetworkClientEvent(), NetworkServerEvent(), SendNetworkData()

Поддерживаемые OS

Все

<- OpenNetworkConnection() - Оглавление Network - SendNetworkData()->