LingerOption.Enabled 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个值,指示 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
或 false
,并将更改的 LingerOptionSetSocketOption 传递给 方法,或者设置 LingerState 或 LingerState property.to 禁用或启用挥之不去。
下表描述了 属性和 LingerTime 属性中LingerState存储的属性的Enabled可能值的行为。
enable |
seconds |
行为 |
---|---|---|
false (禁用) ,默认值 |
超时不适用, (默认) 。 | 尝试为面向连接的套接字 (TCP 发送挂起数据,例如,) ,直到默认 IP 协议超时过期。 |
true 已启用 () |
非零超时 | 尝试发送挂起的数据,直到指定的超时过期,如果尝试失败,Winsock 将重置连接。 |
true 已启用 () |
零超时。 | 放弃任何挂起的数据。 对于面向连接的套接字 (TCP(例如) ),Winsock 会重置连接。 |
IP 堆栈根据连接的往返时间计算要使用的默认 IP 协议超时期限。 在大多数情况下,堆栈计算的超时比应用程序定义的超时更相关。 这是未设置 属性时 LingerState 套接字的默认行为。
LingerTime当属性中LingerState存储的属性设置为大于默认 IP 协议超时时,默认 IP 协议超时仍将应用并替代。