TcpClient.NoDelay Proprietà

Definizione

Ottiene o imposta un valore che disabilita un ritardo quando i buffer di invio o di ricezione non sono pieni.

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

Valore della proprietà

Boolean

true se il ritardo è disabilitato; in caso contrario, false. Il valore predefinito è false.

Esempio

Nell'esempio di codice seguente viene disabilitato il ritardo. Controlla quindi il valore di NoDelay per verificare che la proprietà sia stata impostata correttamente.

// 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

Commenti

Quando NoDelay è false, un TcpClient oggetto non invia un pacchetto in rete fino a quando non ha raccolto una quantità significativa di dati in uscita. A causa della quantità di overhead in un segmento TCP, l'invio di piccole quantità di dati è inefficiente. Tuttavia, esistono situazioni in cui è necessario inviare quantità molto ridotte di dati o prevedere risposte immediate da ogni pacchetto inviato. La decisione deve valutare l'importanza relativa dell'efficienza di rete rispetto ai requisiti dell'applicazione.

Si applica a