TcpClient.NoDelay Propiedad

Definición

Obtiene o establece un valor que deshabilita cualquier retraso cuando los búferes de envío o recepción no están llenos.

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 propiedad

true si el retraso está deshabilitado; de lo contrario, false. El valor predeterminado es false.

Ejemplos

En el ejemplo de código siguiente se deshabilita el retraso. A continuación, comprueba el valor de NoDelay para comprobar que la propiedad se estableció correctamente.

// 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 )
      Console::WriteLine( "The delay was set successfully to {0}", tcpClient->NoDelay );
// 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)
    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

Comentarios

Cuando NoDelay es false, un TcpClient no envía un paquete a través de la red hasta que haya recopilado una cantidad significativa de datos salientes. Debido a la cantidad de sobrecarga en un segmento TCP, el envío de pequeñas cantidades de datos es ineficaz. Sin embargo, existen situaciones en las que es necesario enviar cantidades muy pequeñas de datos o esperar respuestas inmediatas de cada paquete que envíe. La decisión debe pesar la importancia relativa de la eficiencia de la red frente a los requisitos de la aplicación.

Se aplica a