TcpClient.NoDelay 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.
Recebe ou define um valor que desativa um atraso quando os buffers de envio ou receção não estão cheios.
public:
property bool NoDelay { bool get(); void set(bool value); };
public bool NoDelay { get; set; }
member this.NoDelay : bool with get, set
Public Property NoDelay As Boolean
Valor de Propriedade
true se o atraso for desativado; caso contrário, false. O valor predefinido é false.
Exemplos
O seguinte exemplo de código desativa o atraso. Depois, verifica o valor de NoDelay para verificar se a propriedade foi definida com sucesso.
// Sends data immediately upon calling NetworkStream.Write.
tcpClient.NoDelay = true;
// Determines if the delay is enabled by using the NoDelay property.
if (tcpClient.NoDelay)
Console.WriteLine ("The delay was set successfully to " + tcpClient.NoDelay.ToString ());
' Sends data immediately upon calling NetworkStream.Write.
tcpClient.NoDelay = True
' Determines if the delay is enabled by using the NoDelay property.
If tcpClient.NoDelay = True Then
Console.WriteLine(("The delay was set successfully to " + tcpClient.NoDelay.ToString()))
End If
Observações
Quando NoDelay é false, a TcpClient não envia um pacote pela rede até ter recolhido uma quantidade significativa de dados de saída. Devido à quantidade de sobrecarga num segmento TCP, enviar pequenas quantidades de dados é ineficiente. No entanto, existem situações em que é necessário enviar quantidades muito pequenas de dados ou esperar respostas imediatas de cada pacote que envia. A sua decisão deve ponderar a importância relativa da eficiência da rede face aos requisitos da aplicação.