295 lines
20 KiB
XML
295 lines
20 KiB
XML
|
<?xml version="1.0" encoding="utf-8"?>
|
||
|
<Type Name="LingerOption" FullName="System.Net.Sockets.LingerOption" FullNameSP="System_Net_Sockets_LingerOption" Maintainer="ecma">
|
||
|
<TypeSignature Language="ILASM" Value=".class public LingerOption extends System.Object" />
|
||
|
<TypeSignature Language="C#" Value="public class LingerOption" />
|
||
|
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit LingerOption extends System.Object" />
|
||
|
<MemberOfLibrary>Networking</MemberOfLibrary>
|
||
|
<AssemblyInfo>
|
||
|
<AssemblyName>System</AssemblyName>
|
||
|
<AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ]</AssemblyPublicKey>
|
||
|
<AssemblyVersion>1.0.x.x</AssemblyVersion>
|
||
|
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
|
||
|
<AssemblyVersion>2.0.0.0</AssemblyVersion>
|
||
|
<AssemblyVersion>4.0.0.0</AssemblyVersion>
|
||
|
</AssemblyInfo>
|
||
|
<ThreadingSafetyStatement>All public static members of this type are safe for multithreaded operations. No instance members are guaranteed to be thread safe.</ThreadingSafetyStatement>
|
||
|
<Base>
|
||
|
<BaseTypeName>System.Object</BaseTypeName>
|
||
|
</Base>
|
||
|
<Interfaces />
|
||
|
<Docs>
|
||
|
<remarks>
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />
|
||
|
<para>There may still be data available in the outgoing network buffer after an application calls the <see cref="T:System.Net.Sockets.Socket" /> or <see cref="T:System.Net.Sockets.TcpClient" /> method. If you want to specify the amount of time that the <see cref="T:System.Net.Sockets.Socket" /> will attempt to transmit unsent data after closing, create a <see cref="T:System.Net.Sockets.LingerOption" /> with the <paramref name="enable" /> parameter set to true, and the <paramref name="seconds" /> parameter set to the desired amount of time. The <paramref name="seconds" /> parameter is used to indicate how long you would like the <see cref="T:System.Net.Sockets.Socket" /> to remain connected before timing out. If you do not want the <see cref="T:System.Net.Sockets.Socket" /> to stay connected for any length of time after closing, create a <see cref="T:System.Net.Sockets.LingerOption" /> instance with the <paramref name="enable" /> parameter set to true and the <paramref name="seconds" /> parameter set to zero. In this case, the <see cref="T:System.Net.Sockets.Socket" /> will close immediately and any unsent data will be lost. Once created, pass the <see cref="T:System.Net.Sockets.LingerOption" /> to the <see cref="M:System.Net.Sockets.Socket.SetSocketOption(System.Net.Sockets.SocketOptionLevel,System.Net.Sockets.SocketOptionName,System.Int32)" /> method. If you are sending and receiving data with a <see cref="T:System.Net.Sockets.TcpClient" />, then set the <see cref="T:System.Net.Sockets.LingerOption" /> instance in the <see cref="P:System.Net.Sockets.TcpClient.LingerState" /> property.</para>
|
||
|
<para>The IP stack computes the default IP protocol time-out period to use based on the round trip time of the connection. In most cases, the time-out computed by the stack is more relevant than one defined by an application. This is the default behavior for a <see cref="T:System.Net.Sockets.Socket" /> when the <see cref="P:System.Net.Sockets.Socket.LingerState" /> property is not set and for a <see cref="T:System.Net.Sockets.TcpClient" /> when the <see cref="P:System.Net.Sockets.TcpClient.LingerState" /> property is not set.</para>
|
||
|
</remarks>
|
||
|
<summary>
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />
|
||
|
<para>Specifies whether a <see cref="T:System.Net.Sockets.Socket" /> will remain connected after a call to the <see cref="M:System.Net.Sockets.Socket.Close" /> or <see cref="M:System.Net.Sockets.TcpClient.Close" /> methods and the length of time it will remain connected, if data remains to be sent.</para>
|
||
|
</summary>
|
||
|
</Docs>
|
||
|
<Members>
|
||
|
<Member MemberName=".ctor">
|
||
|
<MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(bool enable, int32 seconds)" />
|
||
|
<MemberSignature Language="C#" Value="public LingerOption (bool enable, int seconds);" />
|
||
|
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(bool enable, int32 seconds) cil managed" />
|
||
|
<MemberType>Constructor</MemberType>
|
||
|
<AssemblyInfo>
|
||
|
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
|
||
|
<AssemblyVersion>2.0.0.0</AssemblyVersion>
|
||
|
<AssemblyVersion>4.0.0.0</AssemblyVersion>
|
||
|
</AssemblyInfo>
|
||
|
<ReturnValue />
|
||
|
<Parameters>
|
||
|
<Parameter Name="enable" Type="System.Boolean" />
|
||
|
<Parameter Name="seconds" Type="System.Int32" />
|
||
|
</Parameters>
|
||
|
<Docs>
|
||
|
<remarks>
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />
|
||
|
<para>There may still be data available in the outgoing network buffer after you close the <see cref="T:System.Net.Sockets.Socket" />. Use the <paramref name="enable" /> parameter to specify whether you would like the <see cref="T:System.Net.Sockets.Socket" /> to continue transmitting unsent data after the close method is called. Use the <paramref name="seconds" /> parameter to indicate how long you would like the <see cref="T:System.Net.Sockets.Socket" /> to attempt transferring unsent data before timing out. If you specify true for the <paramref name="enable" /> parameter and 0 for the <paramref name="seconds" /> parameter, the <see cref="T:System.Net.Sockets.Socket" /> will attempt to send data until there is no data left in the outgoing network buffer. If you specify false for the <paramref name="enable" /> parameter, the <see cref="T:System.Net.Sockets.Socket" /> will close immediately and any unsent data will be lost.</para>
|
||
|
<para>The following table describes the behavior on the <see cref="M:System.Net.Sockets.Socket.Close" /> and <see cref="M:System.Net.Sockets.TcpClient.Close" /> methods based on the possible values of the <paramref name="enable" /> and <paramref name="seconds" /> parameters when an T:System.Net.Sockets.LingerOption instance is created and set in the <see cref="P:System.Net.Sockets.Socket.LingerState" /> or <see cref="P:System.Net.Sockets.TcpClient.LingerState" /> property.</para>
|
||
|
<list type="table">
|
||
|
<listheader>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>
|
||
|
<paramref name="enable" />
|
||
|
</para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>
|
||
|
<paramref name="seconds" />
|
||
|
</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Behavior</para>
|
||
|
</description>
|
||
|
</item>
|
||
|
</listheader>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>false (disabled), the default value </para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>The time-out is not applicable, (default).</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Attempts to send pending data for a connection-oriented socket (TCP, for example) until the default IP protocol time-out expires. </para>
|
||
|
</description>
|
||
|
</item>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>true (enabled)</para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>A nonzero time-out</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Attempts to send pending data until the specified time-out expires, and if the attempt fails, then Winsock resets the connection. </para>
|
||
|
</description>
|
||
|
</item>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>true (enabled)</para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>A zero timeout.</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Discards any pending data. For connection-oriented socket (TCP, for example), Winsock resets the connection. </para>
|
||
|
</description>
|
||
|
</item>
|
||
|
</list>
|
||
|
<para>The IP stack computes the default IP protocol time-out period to use based on the round trip time of the connection. In most cases, the time-out computed by the stack is more relevant than one defined by an application. This is the default behavior for a socket when the <see cref="P:System.Net.Sockets.Socket.LingerState" /> property is not set.</para>
|
||
|
<para>When the <see cref="P:System.Net.Sockets.LingerOption.LingerTime" /> property stored in the <see cref="P:System.Net.Sockets.Socket.LingerState" /> property is set greater than the default IP protocol time-out, the default IP protocol time-out will still apply and override.</para>
|
||
|
</remarks>
|
||
|
<summary>
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />
|
||
|
<para>Initializes a new instance of the <see cref="T:System.Net.Sockets.LingerOption" /> class.</para>
|
||
|
</summary>
|
||
|
<param name="enable">
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />true to remain connected after the <see cref="M:System.Net.Sockets.Socket.Close" /> method is called; otherwise, false. </param>
|
||
|
<param name="seconds">
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />The number of seconds to remain connected after the <see cref="M:System.Net.Sockets.Socket.Close" /> method is called. </param>
|
||
|
</Docs>
|
||
|
<Excluded>0</Excluded>
|
||
|
</Member>
|
||
|
<Member MemberName="Enabled">
|
||
|
<MemberSignature Language="ILASM" Value=".property bool Enabled { public hidebysig specialname instance bool get_Enabled() public hidebysig specialname instance void set_Enabled(bool value) }" />
|
||
|
<MemberSignature Language="C#" Value="public bool Enabled { get; set; }" />
|
||
|
<MemberSignature Language="ILAsm" Value=".property instance bool Enabled" />
|
||
|
<MemberType>Property</MemberType>
|
||
|
<AssemblyInfo>
|
||
|
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
|
||
|
<AssemblyVersion>2.0.0.0</AssemblyVersion>
|
||
|
<AssemblyVersion>4.0.0.0</AssemblyVersion>
|
||
|
</AssemblyInfo>
|
||
|
<ReturnValue>
|
||
|
<ReturnType>System.Boolean</ReturnType>
|
||
|
</ReturnValue>
|
||
|
<Parameters />
|
||
|
<Docs>
|
||
|
<value>
|
||
|
<para>
|
||
|
<see langword="true " />to enable lingering
|
||
|
after the <see cref="M:System.Net.Sockets.Socket.Close" qualify="true" />
|
||
|
method is called; otherwise
|
||
|
<see langword="false" />.</para>
|
||
|
</value>
|
||
|
<remarks>
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />
|
||
|
<para>You can use the <see cref="P:System.Net.Sockets.LingerOption.Enabled" /> property to determine whether the <see cref="T:System.Net.Sockets.Socket" /> will linger after closing. Change this value to true or false and pass the altered <see cref="T:System.Net.Sockets.LingerOption" /> to the <see cref="M:System.Net.Sockets.Socket.SetSocketOption(System.Net.Sockets.SocketOptionLevel,System.Net.Sockets.SocketOptionName,System.Int32)" /> method or set the <see cref="P:System.Net.Sockets.TcpClient.LingerState" /> or <see cref="P:System.Net.Sockets.Socket.LingerState" /> property.to disable or enable lingering.</para>
|
||
|
<para>The following table describes the behavior for the possible values of the <see cref="P:System.Net.Sockets.LingerOption.Enabled" /> property and the <see cref="P:System.Net.Sockets.LingerOption.LingerTime" /> property stored in the <see cref="P:System.Net.Sockets.Socket.LingerState" /> property.</para>
|
||
|
<list type="table">
|
||
|
<listheader>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>
|
||
|
<paramref name="enable" />
|
||
|
</para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>
|
||
|
<paramref name="seconds" />
|
||
|
</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Behavior</para>
|
||
|
</description>
|
||
|
</item>
|
||
|
</listheader>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>false (disabled), the default value </para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>The time-out is not applicable, (default).</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Attempts to send pending data for a connection-oriented socket (TCP, for example) until the default IP protocol time-out expires. </para>
|
||
|
</description>
|
||
|
</item>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>true (enabled)</para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>A nonzero time-out</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Attempts to send pending data until the specified time-out expires, and if the attempt fails, then Winsock resets the connection. </para>
|
||
|
</description>
|
||
|
</item>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>true (enabled)</para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>A zero timeout.</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Discards any pending data. For connection-oriented socket (TCP, for example), Winsock resets the connection. </para>
|
||
|
</description>
|
||
|
</item>
|
||
|
</list>
|
||
|
<para>The IP stack computes the default IP protocol time-out period to use based on the round trip time of the connection. In most cases, the time-out computed by the stack is more relevant than one defined by an application. This is the default behavior for a socket when the <see cref="P:System.Net.Sockets.Socket.LingerState" /> property is not set.</para>
|
||
|
<para>When the <see cref="P:System.Net.Sockets.LingerOption.LingerTime" /> property stored in the <see cref="P:System.Net.Sockets.Socket.LingerState" /> property is set greater than the default IP protocol time-out, the default IP protocol time-out will still apply and override.</para>
|
||
|
</remarks>
|
||
|
<summary>
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />
|
||
|
<para>Gets or sets a value that indicates whether to linger after the <see cref="T:System.Net.Sockets.Socket" /> is closed.</para>
|
||
|
</summary>
|
||
|
</Docs>
|
||
|
<Excluded>0</Excluded>
|
||
|
</Member>
|
||
|
<Member MemberName="LingerTime">
|
||
|
<MemberSignature Language="ILASM" Value=".property int32 LingerTime { public hidebysig specialname instance int32 get_LingerTime() public hidebysig specialname instance void set_LingerTime(int32 value) }" />
|
||
|
<MemberSignature Language="C#" Value="public int LingerTime { get; set; }" />
|
||
|
<MemberSignature Language="ILAsm" Value=".property instance int32 LingerTime" />
|
||
|
<MemberType>Property</MemberType>
|
||
|
<AssemblyInfo>
|
||
|
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
|
||
|
<AssemblyVersion>2.0.0.0</AssemblyVersion>
|
||
|
<AssemblyVersion>4.0.0.0</AssemblyVersion>
|
||
|
</AssemblyInfo>
|
||
|
<ReturnValue>
|
||
|
<ReturnType>System.Int32</ReturnType>
|
||
|
</ReturnValue>
|
||
|
<Parameters />
|
||
|
<Docs>
|
||
|
<value>
|
||
|
<para>A <see cref="T:System.Int32" qualify="true" /> that contains the amount of time, in seconds, to remain connected after
|
||
|
calling the <see cref="M:System.Net.Sockets.Socket.Close" qualify="true" />
|
||
|
method.</para>
|
||
|
</value>
|
||
|
<remarks>
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />
|
||
|
<para>Use this value if you want to determine how long a closed <see cref="T:System.Net.Sockets.Socket" /> will attempt to transfer unsent data before timing out. You can also set this value to the desired time-out period, in seconds. </para>
|
||
|
<para>If the <see cref="P:System.Net.Sockets.LingerOption.Enabled" /> property is true, and you set <see cref="P:System.Net.Sockets.LingerOption.LingerTime" /> to 0, the <see cref="T:System.Net.Sockets.Socket" /> discards any pending data to send in the outgoing network buffer. If you change this value, you must pass the altered <see cref="T:System.Net.Sockets.LingerOption" /> instance to the <see cref="M:System.Net.Sockets.Socket.SetSocketOption(System.Net.Sockets.SocketOptionLevel,System.Net.Sockets.SocketOptionName,System.Int32)" /> method or set the <see cref="P:System.Net.Sockets.TcpClient.LingerState" /> or <see cref="P:System.Net.Sockets.Socket.LingerState" /> property.</para>
|
||
|
<para>The following table describes the behavior for the possible values of the <see cref="P:System.Net.Sockets.LingerOption.Enabled" /> property and the <see cref="P:System.Net.Sockets.LingerOption.LingerTime" /> property stored in the <see cref="P:System.Net.Sockets.Socket.LingerState" /> property.</para>
|
||
|
<list type="table">
|
||
|
<listheader>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>
|
||
|
<paramref name="enable" />
|
||
|
</para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>
|
||
|
<paramref name="seconds" />
|
||
|
</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Behavior</para>
|
||
|
</description>
|
||
|
</item>
|
||
|
</listheader>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>false (disabled), the default value </para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>The time-out is not applicable, (default).</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Attempts to send pending data for a connection-oriented socket (TCP, for example) until the default IP protocol time-out expires. </para>
|
||
|
</description>
|
||
|
</item>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>true (enabled)</para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>A nonzero time-out</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Attempts to send pending data until the specified time-out expires, and if the attempt fails, then Winsock resets the connection. </para>
|
||
|
</description>
|
||
|
</item>
|
||
|
<item>
|
||
|
<term>
|
||
|
<para>true (enabled)</para>
|
||
|
</term>
|
||
|
<description>
|
||
|
<para>A zero timeout.</para>
|
||
|
</description>
|
||
|
<description>
|
||
|
<para>Discards any pending data. For connection-oriented socket (TCP, for example), Winsock resets the connection. </para>
|
||
|
</description>
|
||
|
</item>
|
||
|
</list>
|
||
|
<para>The IP stack computes the default IP protocol time-out period to use based on the round trip time of the connection. In most cases, the time-out computed by the stack is more relevant than one defined by an application. This is the default behavior for a socket when the <see cref="P:System.Net.Sockets.Socket.LingerState" /> property is not set.</para>
|
||
|
<para>When the <see cref="P:System.Net.Sockets.LingerOption.LingerTime" /> property stored in the <see cref="P:System.Net.Sockets.Socket.LingerState" /> property is set greater than the default IP protocol time-out, the default IP protocol time-out will still apply and override.</para>
|
||
|
</remarks>
|
||
|
<summary>
|
||
|
<attribution license="cc4" from="Microsoft" modified="false" />
|
||
|
<para>Gets or sets the amount of time to remain connected after calling the <see cref="M:System.Net.Sockets.Socket.Close" /> method if data remains to be sent.</para>
|
||
|
</summary>
|
||
|
</Docs>
|
||
|
<Excluded>0</Excluded>
|
||
|
</Member>
|
||
|
</Members>
|
||
|
<TypeExcluded>0</TypeExcluded>
|
||
|
</Type>
|