Прочитать на английском

Поделиться через


TcpClient.ReceiveBufferSize Свойство

Определение

Возвращает или задает размер буфера приема.

C#
public int ReceiveBufferSize { get; set; }

Значение свойства

Размер приемного буфера (в байтах). Значение по умолчанию — 8192 байт.

Исключения

Произошла ошибка при задании размера буфера.

-или-

В приложениях .NET Compact Framework это свойство задать нельзя. Обходные пути см. в примечании, относящемся к платформам, в разделе "Примечания".

Примеры

В следующем примере кода устанавливается и возвращается размер буфера приема.

C#
// Sets the receive buffer size using the ReceiveBufferSize public property.
tcpClient.ReceiveBufferSize = 1024;

// Gets the receive buffer size using the ReceiveBufferSize public property.
if (tcpClient.ReceiveBufferSize == 1024)
    Console.WriteLine ("The receive buffer was successfully set to " + tcpClient.ReceiveBufferSize.ToString ());

Комментарии

Свойство ReceiveBufferSize получает или задает количество байтов, которые должны храниться в буфере получения для каждой операции чтения. Это свойство фактически управляет пространством сетевого буфера, выделенным для получения входящих данных.

Сетевой буфер должен быть по крайней мере таким же, как буфер приложения, чтобы обеспечить доступность требуемых данных при вызове NetworkStream.Read метода . Используйте свойство , ReceiveBufferSize чтобы задать этот размер. Если приложение будет получать массовые данные, следует передать Read методу очень большой буфер приложения.

Если сетевой буфер меньше объема данных, запрашиваемых в Read методе, вы не сможете получить нужный объем данных за одну операцию чтения. Это влечет за собой дополнительные вызовы Read метода .

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

См. также раздел