Socket.SetSocketOption Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Define uma opção Socket.
Sobrecargas
SetSocketOption(SocketOptionLevel, SocketOptionName, Boolean) |
Define a opção Socket especificada para o valor especificado de Boolean. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Byte[]) |
Define a opção Socket especificada para o valor especificado, representado como uma matriz de bytes. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Int32) |
Define a opção Socket especificada para o valor inteiro especificado. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Object) |
Define a opção Socket especificada com o valor especificado, representado como um objeto. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Boolean)
- Origem:
- Socket.cs
- Origem:
- Socket.cs
- Origem:
- Socket.cs
public:
void SetSocketOption(System::Net::Sockets::SocketOptionLevel optionLevel, System::Net::Sockets::SocketOptionName optionName, bool optionValue);
public void SetSocketOption (System.Net.Sockets.SocketOptionLevel optionLevel, System.Net.Sockets.SocketOptionName optionName, bool optionValue);
member this.SetSocketOption : System.Net.Sockets.SocketOptionLevel * System.Net.Sockets.SocketOptionName * bool -> unit
Public Sub SetSocketOption (optionLevel As SocketOptionLevel, optionName As SocketOptionName, optionValue As Boolean)
Parâmetros
- optionLevel
- SocketOptionLevel
Um dos valores de SocketOptionLevel.
- optionName
- SocketOptionName
Um dos valores de SocketOptionName.
Exceções
O objeto Socket foi fechado.
Ocorreu um erro ao tentar acessar o soquete.
Exemplos
O exemplo de código a seguir abre um soquete e habilita as DontLinger
OutOfBandInline
opções de soquete e .
// Establish the local endpoint for the socket.
IPHostEntry^ ipHost = Dns::GetHostEntry( Dns::GetHostName() );
IPAddress^ ipAddr = ipHost->AddressList[ 0 ];
IPEndPoint^ ipEndPoint = gcnew IPEndPoint( ipAddr,11000 );
// Create a TCP socket.
Socket^ client = gcnew Socket( AddressFamily::InterNetwork,SocketType::Stream,ProtocolType::Tcp );
// Connect the socket to the remote endpoint.
client->Connect( ipEndPoint );
// Set option that allows socket to close gracefully without lingering.
client->SetSocketOption( SocketOptionLevel::Socket, SocketOptionName::DontLinger, true );
// Set option that allows socket to receive out-of-band information in the data stream.
client->SetSocketOption( SocketOptionLevel::Socket, SocketOptionName::OutOfBandInline, true );
// Establish the local endpoint for the socket.
IPHostEntry ipHost = Dns.GetHostEntry(Dns.GetHostName());
IPAddress ipAddr = ipHost.AddressList[0];
IPEndPoint ipEndPoint = new IPEndPoint(ipAddr, 11000);
// Create a TCP socket.
Socket client = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
// Connect the socket to the remote endpoint.
client.Connect(ipEndPoint);
// Set option that allows socket to close gracefully without lingering.
client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.DontLinger, true);
// Set option that allows socket to receive out-of-band information in the data stream.
client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.OutOfBandInline, true);
Comentários
Socket as opções determinam o comportamento do atual Socket. Defina optionValue
como true
para habilitar a opção ou para false
desabilitar a opção.
Socket as opções são agrupadas por nível de suporte ao protocolo.
Veja abaixo as várias Socket opções que podem ser definidas usando essa sobrecarga. Essas opções são agrupadas pelo valor apropriado SocketOptionLevel . Se você pretende definir qualquer uma dessas opções, use o valor apropriado SocketOptionLevel para o optionLevel
parâmetro . A opção que você escolher definir deve ser especificada no optionName
parâmetro . Se você quiser obter o valor atual de qualquer uma das opções listadas, use o GetSocketOption método .
SocketOptionLevel.Socket opções que podem ser definidas usando essa sobrecarga.
SocketOptionLevel.IP opções que podem ser definidas usando essa sobrecarga.
SocketOptionLevel.Tcp opções que podem ser definidas usando essa sobrecarga.
SocketOptionLevel.Udp opções que podem ser definidas usando essa sobrecarga.
Para obter mais informações sobre essas opções, consulte a SocketOptionName enumeração .
Observação
Se você receber uma SocketException exceção, use a SocketException.ErrorCode propriedade para obter o código de erro específico. Depois de obter esse código, consulte a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.
Aplica-se a
SetSocketOption(SocketOptionLevel, SocketOptionName, Byte[])
- Origem:
- Socket.cs
- Origem:
- Socket.cs
- Origem:
- Socket.cs
Define a opção Socket especificada para o valor especificado, representado como uma matriz de bytes.
public:
void SetSocketOption(System::Net::Sockets::SocketOptionLevel optionLevel, System::Net::Sockets::SocketOptionName optionName, cli::array <System::Byte> ^ optionValue);
public void SetSocketOption (System.Net.Sockets.SocketOptionLevel optionLevel, System.Net.Sockets.SocketOptionName optionName, byte[] optionValue);
member this.SetSocketOption : System.Net.Sockets.SocketOptionLevel * System.Net.Sockets.SocketOptionName * byte[] -> unit
Public Sub SetSocketOption (optionLevel As SocketOptionLevel, optionName As SocketOptionName, optionValue As Byte())
Parâmetros
- optionLevel
- SocketOptionLevel
Um dos valores de SocketOptionLevel.
- optionName
- SocketOptionName
Um dos valores de SocketOptionName.
Exceções
Ocorreu um erro ao tentar acessar o soquete.
O Socket foi fechado.
Exemplos
O exemplo de código a seguir define os LingerOption valores de tempo limite e Send .
// Specifies that the Socket will linger for 10 seconds after Close is called.
LingerOption^ lingerOption = gcnew LingerOption(true, 10);
s->SetSocketOption(SocketOptionLevel::Socket, SocketOptionName::Linger, lingerOption);
// The socket will linger for 10 seconds after Socket.Close is called.
var lingerOption = new LingerOption(true, 10);
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption);
' The socket will linger for 10 seconds after Socket.Close is called.
Dim lingerOption As New LingerOption(True, 10)
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption)
Comentários
Socket as opções determinam o comportamento do atual Socket. Use essa sobrecarga para definir essas Socket opções que exigem uma matriz de bytes como um valor de opção.
Observação
Se você receber um SocketException, use a SocketException.ErrorCode propriedade para obter o código de erro específico. Depois de obter esse código, consulte a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.
Observação
Esse membro emite o rastreamento de informações quando você ativa o rastreamento de rede em seu aplicativo. Para obter mais informações, consulte Rastreamento de rede em .NET Framework.
Confira também
Aplica-se a
SetSocketOption(SocketOptionLevel, SocketOptionName, Int32)
- Origem:
- Socket.cs
- Origem:
- Socket.cs
- Origem:
- Socket.cs
Define a opção Socket especificada para o valor inteiro especificado.
public:
void SetSocketOption(System::Net::Sockets::SocketOptionLevel optionLevel, System::Net::Sockets::SocketOptionName optionName, int optionValue);
public void SetSocketOption (System.Net.Sockets.SocketOptionLevel optionLevel, System.Net.Sockets.SocketOptionName optionName, int optionValue);
member this.SetSocketOption : System.Net.Sockets.SocketOptionLevel * System.Net.Sockets.SocketOptionName * int -> unit
Public Sub SetSocketOption (optionLevel As SocketOptionLevel, optionName As SocketOptionName, optionValue As Integer)
Parâmetros
- optionLevel
- SocketOptionLevel
Um dos valores de SocketOptionLevel.
- optionName
- SocketOptionName
Um dos valores de SocketOptionName.
- optionValue
- Int32
Um valor da opção.
Exceções
Ocorreu um erro ao tentar acessar o soquete.
O Socket foi fechado.
Exemplos
O exemplo de código a seguir define os LingerOption valores de tempo limite e Send .
// Specifies that send operations will time-out
// if confirmation is not received within 1000 milliseconds.
s->SetSocketOption(SocketOptionLevel::Socket, SocketOptionName::SendTimeout, 1000);
// Send operations will time-out if confirmation
// is not received within 1000 milliseconds.
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 1000);
'Send operations will time-out if confirmation is
' not received within 1000 milliseconds.
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 1000)
Comentários
Socket as opções determinam o comportamento do atual Socket. Para uma opção com um Boolean tipo de dados, especifique um valor diferente de zero para habilitar a opção e um valor zero para desabilitar a opção. Para uma opção com um tipo de dados inteiro, especifique o valor apropriado. Socket as opções são agrupadas por nível de suporte ao protocolo.
Veja abaixo as várias Socket opções que podem ser definidas usando essa sobrecarga. Essas opções são agrupadas pelo apropriado SocketOptionLevel. Se você pretende definir qualquer uma dessas opções, use o apropriado SocketOptionLevel para o optionLevel
parâmetro . A opção que você escolher definir deve ser especificada no optionName
parâmetro . Se você quiser obter o valor atual de qualquer uma das opções listadas, use o GetSocketOption método .
SocketOptionLevel.Socket opções que podem ser definidas usando essa sobrecarga.
SocketOptionLevel.IP opções que podem ser definidas usando essa sobrecarga.
SocketOptionLevel.Tcp opções que podem ser definidas usando essa sobrecarga.
SocketOptionLevel.Udp opções que podem ser definidas usando essa sobrecarga.
SocketOptionLevel.IPv6 opções que podem ser definidas usando essa sobrecarga.
Para obter mais informações sobre essas opções, consulte a SocketOptionName enumeração .
Observação
Se você receber um SocketException, use a SocketException.ErrorCode propriedade para obter o código de erro específico. Depois de obter esse código, consulte a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.
Observação
Esse membro emite o rastreamento de informações quando você ativa o rastreamento de rede em seu aplicativo. Para obter mais informações, consulte Rastreamento de rede em .NET Framework.
Confira também
Aplica-se a
SetSocketOption(SocketOptionLevel, SocketOptionName, Object)
- Origem:
- Socket.cs
- Origem:
- Socket.cs
- Origem:
- Socket.cs
Define a opção Socket especificada com o valor especificado, representado como um objeto.
public:
void SetSocketOption(System::Net::Sockets::SocketOptionLevel optionLevel, System::Net::Sockets::SocketOptionName optionName, System::Object ^ optionValue);
public void SetSocketOption (System.Net.Sockets.SocketOptionLevel optionLevel, System.Net.Sockets.SocketOptionName optionName, object optionValue);
member this.SetSocketOption : System.Net.Sockets.SocketOptionLevel * System.Net.Sockets.SocketOptionName * obj -> unit
Public Sub SetSocketOption (optionLevel As SocketOptionLevel, optionName As SocketOptionName, optionValue As Object)
Parâmetros
- optionLevel
- SocketOptionLevel
Um dos valores de SocketOptionLevel.
- optionName
- SocketOptionName
Um dos valores de SocketOptionName.
- optionValue
- Object
Uma LingerOption ou MulticastOption que contém o valor da opção.
Exceções
optionValue
é null
.
Ocorreu um erro ao tentar acessar o soquete.
O Socket foi fechado.
Exemplos
O exemplo de código a seguir define os LingerOption valores de tempo limite e Send .
// Specifies that the Socket will linger for 10 seconds after Close is called.
LingerOption^ lingerOption = gcnew LingerOption(true, 10);
s->SetSocketOption(SocketOptionLevel::Socket, SocketOptionName::Linger, lingerOption);
// The socket will linger for 10 seconds after Socket.Close is called.
var lingerOption = new LingerOption(true, 10);
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption);
' The socket will linger for 10 seconds after Socket.Close is called.
Dim lingerOption As New LingerOption(True, 10)
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption)
Comentários
Socket as opções determinam o comportamento do atual Socket. Use essa sobrecarga para definir as Lingeropções , AddMembershipe DropMembershipSocket . Para a opção Linger , use Socket para o optionLevel
parâmetro . Para AddMembership e DropMembership, use IP. Se você quiser obter o valor atual de qualquer uma das opções listadas acima, use o GetSocketOption método .
Observação
Se você receber um SocketException, use a SocketException.ErrorCode propriedade para obter o código de erro específico. Depois de obter esse código, consulte a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.