次の方法で共有


LingerOption(Boolean, Int32) コンストラクター

定義

LingerOption クラスの新しいインスタンスを初期化します。

public:
 LingerOption(bool enable, int seconds);
public LingerOption (bool enable, int seconds);
new System.Net.Sockets.LingerOption : bool * int -> System.Net.Sockets.LingerOption
Public Sub New (enable As Boolean, seconds As Integer)

パラメーター

enable
Boolean

Close() メソッドが呼び出された後も接続を維持する場合は true。それ以外の場合は false

seconds
Int32

Close() メソッドが呼び出された後、接続を維持する秒数。

次の例では、 メソッドを呼び出Closeした後に、以前に作成した Socket を 1 秒残すよう設定します。

LingerOption^ myOpts = gcnew LingerOption( true,1 );
mySocket->SetSocketOption( SocketOptionLevel::Socket, SocketOptionName::Linger, myOpts );
LingerOption myOpts = new LingerOption(true,1);

mySocket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, myOpts);
Dim myOpts As New LingerOption(True, 1)
       
mySocket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, _
   myOpts)

注釈

を閉じて Socketも、送信ネットワーク バッファーにデータが残っている可能性があります。 パラメーターを enable 使用して、close メソッドの呼び出し後に 未送信データの送信を続行するかどうかを Socket 指定します。 パラメーターをseconds使用して、タイムアウト前に未送信データの転送を試みる期間Socketを指定します。パラメーターに を指定し、 パラメーターに enable 0 をseconds指定trueすると、 Socket は送信ネットワーク バッファーにデータが残っていないまでデータの送信を試みます。 パラメーターに enable を指定falseすると、 Socket はすぐに閉じられ、未格納のデータは失われます。

次の表では、 プロパティまたは TcpClient.LingerStateTcpClient.Close プロパティで Socket.Close T:System.Net.Sockets.LingerOption インスタンスが作成および設定されたときのenable、 および seconds パラメーターの可能な値に基づいて、 メソッドと メソッドのSocket.LingerState動作について説明します。

enable seconds 動作
false (無効)、既定値 タイムアウトは適用されません (既定値)。 既定の IP プロトコルタイムアウトの期限が切れるまで、接続指向ソケット (TCP など) の保留中のデータの送信を試みます。
true (有効) 0 以外のタイムアウト 指定したタイムアウトが切れるまで保留中のデータの送信を試み、試行が失敗した場合、Winsock は接続をリセットします。
true (有効) タイムアウトが 0 です。 保留中のデータを破棄します。 接続指向ソケット (TCP など) の場合、Winsock は接続をリセットします。

IP スタックは、接続のラウンド トリップ時間に基づいて、使用する既定の IP プロトコルタイムアウト期間を計算します。 ほとんどの場合、スタックによって計算されたタイムアウトは、アプリケーションによって定義されたタイムアウトよりも関連性が高くなります。 これは、 プロパティが設定されていない場合のソケットの既定の LingerState 動作です。

プロパティに LingerTime 格納されている LingerState プロパティが既定の IP プロトコル タイムアウトより大きく設定されている場合でも、既定の IP プロトコルタイムアウトは引き続き適用され、オーバーライドされます。

適用対象