TcpClient.NoDelay プロパティ

定義

送信バッファーまたは受信バッファーが設定されているサイズを超えていない場合に、遅延を無効にする値を取得または設定します。

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

プロパティ値

true 遅延が無効になっている場合。それ以外の場合は false。 既定値は false です。

次のコード例では、遅延を無効にします。 次に、 の 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 {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

注釈

falseの場合NoDelayTcpClient は大量の送信データを収集するまで、ネットワーク経由でパケットを送信しません。 TCP セグメントのオーバーヘッドが大きいため、少量のデータの送信は非効率的です。 ただし、非常に少量のデータを送信する必要がある場合や、送信する各パケットからの即時応答を期待する必要がある状況が存在します。 決定は、ネットワーク効率とアプリケーション要件の相対的な重要性を比較検討する必要があります。

適用対象