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 세그먼트의 오버헤드 양으로 인해 소량의 데이터를 보내는 것은 비효율적입니다. 그러나 매우 적은 양의 데이터를 보내거나 보내는 각 패킷에서 즉각적인 응답을 예상해야 하는 상황이 있습니다. 의사 결정에는 애플리케이션 요구 사항에 비해 네트워크 효율성의 상대적 중요도 평가 해야 합니다.

적용 대상