TcpClient.ReceiveBufferSize Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém ou define o tamanho do buffer de receção.
public:
property int ReceiveBufferSize { int get(); void set(int value); };
public int ReceiveBufferSize { get; set; }
member this.ReceiveBufferSize : int with get, set
Public Property ReceiveBufferSize As Integer
Valor de Propriedade
O tamanho do buffer de receção, em bytes. O valor padrão é 8192 bytes.
Exceções
Ocorreu um erro ao definir o tamanho do buffer.
-ou-
Em aplicações .NET Compact Framework, não pode definir esta propriedade. Para uma solução alternativa, consulte a Nota da Plataforma em Observações.
Exemplos
O exemplo de código seguinte define e obtém o tamanho do buffer de receção.
// 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 ());
' 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 Then
Console.WriteLine(("The receive buffer was successfully set to " + tcpClient.ReceiveBufferSize.ToString()))
End If
Observações
A ReceiveBufferSize propriedade recebe ou define o número de bytes que espera armazenar no buffer de receção para cada operação de leitura. Esta propriedade manipula na verdade o espaço de buffer de rede alocado para receber dados recebidos.
O seu buffer de rede deve ser pelo menos tão grande quanto o buffer da sua aplicação para garantir que os dados desejados estarão disponíveis quando chamar o NetworkStream.Read método. Use a ReceiveBufferSize propriedade para definir este tamanho. Se a sua aplicação vai receber dados em massa, deve passar ao Read método um buffer de aplicação muito grande.
Se o buffer de rede for menor do que a quantidade de dados que solicita no Read método, não conseguirá recuperar a quantidade desejada de dados numa única operação de leitura. Isto gera o sobrecusto de chamadas adicionais para o Read método.