Socket.SetSocketOption Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Imposta un'opzione di Socket.
Overload
SetSocketOption(SocketOptionLevel, SocketOptionName, Boolean) |
Imposta l'opzione Socket specificata sul valore Boolean specificato. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Byte[]) |
Imposta l'opzione Socket specificata sul valore specificato, rappresentato come una matrice di byte. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Int32) |
Imposta l'opzione Socket specificata sull'intero specificato. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Object) |
Imposta l'opzione Socket specificata sul valore specificato, rappresentato come un oggetto. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Boolean)
- Origine:
- Socket.cs
- Origine:
- Socket.cs
- Origine:
- 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)
Parametri
- optionLevel
- SocketOptionLevel
Uno dei valori di SocketOptionLevel.
- optionName
- SocketOptionName
Uno dei valori di SocketOptionName.
Eccezioni
L'oggetto Socket è stato chiuso.
Si è verificato un errore durante il tentativo di accesso al socket.
Esempio
Nell'esempio di codice seguente viene aperto un socket e vengono OutOfBandInline
abilitate le DontLinger
opzioni socket 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);
Commenti
Socket le opzioni determinano il comportamento dell'oggetto corrente Socket. Impostare optionValue
su true
per abilitare l'opzione o per false
disabilitare l'opzione .
Socket le opzioni sono raggruppate per livello di supporto del protocollo.
Di seguito sono elencate le varie Socket opzioni che è possibile impostare usando questo overload. Queste opzioni sono raggruppate in base al valore appropriato SocketOptionLevel . Se si intende impostare una di queste opzioni, assicurarsi di usare il valore appropriato SocketOptionLevel per il optionLevel
parametro . L'opzione che si sceglie di impostare deve essere specificata nel optionName
parametro . Per ottenere il valore corrente di una delle opzioni elencate, usare il GetSocketOption metodo .
SocketOptionLevel.Socket opzioni che possono essere impostate usando questo overload.
SocketOptionLevel.IP opzioni che possono essere impostate usando questo overload.
SocketOptionLevel.Tcp opzioni che possono essere impostate usando questo overload.
SocketOptionLevel.Udp opzioni che possono essere impostate usando questo overload.
Per altre informazioni su queste opzioni, vedere l'enumerazione SocketOptionName .
Nota
Se si riceve un'eccezione SocketException , utilizzare la SocketException.ErrorCode proprietà per ottenere il codice di errore specifico. Dopo aver ottenuto questo codice, fare riferimento alla documentazione relativa al codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.
Si applica a
SetSocketOption(SocketOptionLevel, SocketOptionName, Byte[])
- Origine:
- Socket.cs
- Origine:
- Socket.cs
- Origine:
- Socket.cs
Imposta l'opzione Socket specificata sul valore specificato, rappresentato come una matrice di byte.
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())
Parametri
- optionLevel
- SocketOptionLevel
Uno dei valori di SocketOptionLevel.
- optionName
- SocketOptionName
Uno dei valori di SocketOptionName.
Eccezioni
Si è verificato un errore durante il tentativo di accesso al socket.
L'oggetto Socket è stato chiuso.
Esempio
Nell'esempio di codice seguente vengono impostati i LingerOption valori di timeout 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)
Commenti
Socket le opzioni determinano il comportamento dell'oggetto corrente Socket. Usare questo overload per impostare le Socket opzioni che richiedono una matrice di byte come valore di opzione.
Nota
Se si riceve un SocketExceptionoggetto , utilizzare la SocketException.ErrorCode proprietà per ottenere il codice di errore specifico. Dopo aver ottenuto questo codice, fare riferimento alla documentazione relativa al codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.
Nota
Questo membro genera informazioni di traccia quando viene abilitata la funzionalità di traccia di rete nell'applicazione in uso. Per altre informazioni, vedere Traccia di rete in .NET Framework.
Vedi anche
Si applica a
SetSocketOption(SocketOptionLevel, SocketOptionName, Int32)
- Origine:
- Socket.cs
- Origine:
- Socket.cs
- Origine:
- Socket.cs
Imposta l'opzione Socket specificata sull'intero specificato.
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)
Parametri
- optionLevel
- SocketOptionLevel
Uno dei valori di SocketOptionLevel.
- optionName
- SocketOptionName
Uno dei valori di SocketOptionName.
- optionValue
- Int32
Valore dell'opzione.
Eccezioni
Si è verificato un errore durante il tentativo di accesso al socket.
L'oggetto Socket è stato chiuso.
Esempio
Nell'esempio di codice seguente vengono impostati i LingerOption valori di timeout 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)
Commenti
Socket le opzioni determinano il comportamento dell'oggetto corrente Socket. Per un'opzione con un Boolean tipo di dati, specificare un valore diverso da zero per abilitare l'opzione e un valore zero per disabilitare l'opzione. Per un'opzione con un tipo di dati Integer, specificare il valore appropriato. Socket le opzioni sono raggruppate per livello di supporto del protocollo.
Di seguito sono elencate le varie Socket opzioni che è possibile impostare usando questo overload. Queste opzioni sono raggruppate in base all'oggetto appropriato SocketOptionLevel. Se si intende impostare una di queste opzioni, assicurarsi di usare la classe appropriata SocketOptionLevel per il optionLevel
parametro . L'opzione che si sceglie di impostare deve essere specificata nel optionName
parametro . Per ottenere il valore corrente di una delle opzioni elencate, usare il GetSocketOption metodo .
SocketOptionLevel.Socket opzioni che possono essere impostate usando questo overload.
SocketOptionLevel.IP opzioni che possono essere impostate usando questo overload.
SocketOptionLevel.Tcp opzioni che possono essere impostate usando questo overload.
SocketOptionLevel.Udp opzioni che possono essere impostate usando questo overload.
SocketOptionLevel.IPv6 opzioni che possono essere impostate usando questo overload.
Per altre informazioni su queste opzioni, vedere l'enumerazione SocketOptionName .
Nota
Se si riceve un SocketExceptionoggetto , utilizzare la SocketException.ErrorCode proprietà per ottenere il codice di errore specifico. Dopo aver ottenuto questo codice, fare riferimento alla documentazione relativa al codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.
Nota
Questo membro genera informazioni di traccia quando viene abilitata la funzionalità di traccia di rete nell'applicazione in uso. Per altre informazioni, vedere Traccia di rete in .NET Framework.
Vedi anche
Si applica a
SetSocketOption(SocketOptionLevel, SocketOptionName, Object)
- Origine:
- Socket.cs
- Origine:
- Socket.cs
- Origine:
- Socket.cs
Imposta l'opzione Socket specificata sul valore specificato, rappresentato come un oggetto.
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)
Parametri
- optionLevel
- SocketOptionLevel
Uno dei valori di SocketOptionLevel.
- optionName
- SocketOptionName
Uno dei valori di SocketOptionName.
- optionValue
- Object
LingerOption o MulticastOption contenente il valore dell'opzione.
Eccezioni
optionValue
è null
.
Si è verificato un errore durante il tentativo di accesso al socket.
L'oggetto Socket è stato chiuso.
Esempio
Nell'esempio di codice seguente vengono impostati i LingerOption valori di timeout 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)
Commenti
Socket le opzioni determinano il comportamento dell'oggetto corrente Socket. Usare questo overload per impostare le Lingeropzioni , AddMembershipe DropMembershipSocket . Per l'opzione Linger usare Socket per il optionLevel
parametro . Per AddMembership e DropMembership, usare IP. Se si vuole ottenere il valore corrente di una delle opzioni elencate in precedenza, usare il GetSocketOption metodo .
Nota
Se si riceve un SocketExceptionoggetto , utilizzare la SocketException.ErrorCode proprietà per ottenere il codice di errore specifico. Dopo aver ottenuto questo codice, fare riferimento alla documentazione relativa al codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.