次の方法で共有


LingerOption.Enabled プロパティ

定義

Socket を閉じた後も接続を維持するかどうかを示す値を取得または設定します。

public:
 property bool Enabled { bool get(); void set(bool value); };
public bool Enabled { get; set; }
member this.Enabled : bool with get, set
Public Property Enabled As Boolean

プロパティ値

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

注釈

プロパティを使用して、 Enabled が閉じた後に Socket 残るかどうかを判断できます。 この値を または にtrue変更し、変更した LingerOption を メソッドにSetSocketOption渡すか、 LingerState または LingerState property.to を設定して残留を無効または有効falseにします。

次の表では、 プロパティの使用可能な値とLingerTime、 プロパティにEnabled格納されているプロパティのLingerState動作について説明します。

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

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

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

適用対象