次の方法で共有


TcpClient.NoDelay プロパティ

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

Public Property NoDelay As Boolean
[C#]
public bool NoDelay {get; set;}
[C++]
public: __property bool get_NoDelay();public: __property void set_NoDelay(bool);
[JScript]
public function get NoDelay() : Boolean;public function set NoDelay(Boolean);

プロパティ値

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

解説

NoDelayfalse の場合、 TcpClient は十分な量の送信データが集まるまでネットワークにパケットを送信しません。TCP セグメントのオーバーヘッドの量に比較すると、少量のデータを送信することは非効率的です。ただし、ごく少量のデータを送信する必要がある場合や、送信した各パケットについてすぐに応答が要求される場合もあります。ネットワーク効率とアプリケーション要件の重要性を比較検討して判断してください。

使用例

[Visual Basic, C#, C++] 遅延を有効にする例を次に示します。この例では、次に 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 Then
   Console.WriteLine(("The delay was set successfully to " + tcpClient.NoDelay.ToString()))
End If

[C#] 
// 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 ());


[C++] 
// 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(S"The delay was set successfully to {0}", __box(tcpClient->NoDelay));

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

TcpClient クラス | TcpClient メンバ | System.Net.Sockets 名前空間