Socket.Shutdown(SocketShutdown) 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.
Disabilita l'invio e la ricezione in un oggetto Socket.
public:
void Shutdown(System::Net::Sockets::SocketShutdown how);
public void Shutdown(System.Net.Sockets.SocketShutdown how);
member this.Shutdown : System.Net.Sockets.SocketShutdown -> unit
Public Sub Shutdown (how As SocketShutdown)
Parametri
- how
- SocketShutdown
Uno dei SocketShutdown valori che specifica l'operazione che non sarà più consentita.
Eccezioni
Si è verificato un errore durante il tentativo di accesso al socket.
L'oggetto Socket è stato chiuso.
Esempio
Nell'esempio di codice seguente viene Shutdown usato per disabilitare .Socket
try
{
aSocket.Shutdown(SocketShutdown.Both);
}
finally
{
aSocket.Close();
}
Try
aSocket.Shutdown(SocketShutdown.Both)
Finally
aSocket.Close()
End Try
End Sub
Commenti
Quando si usa un oggetto orientato alla Socketconnessione, chiamare sempre il Shutdown metodo prima di chiudere .Socket In questo modo si garantisce che tutti i dati vengano inviati e ricevuti sul socket connesso prima che vengano chiusi.
Chiamare il Close metodo per liberare tutte le risorse gestite e non gestite associate a Socket. Non tentare di riutilizzare l'oggetto dopo la Socket chiusura.
Nella tabella seguente vengono illustrati i SocketShutdown valori di enumerazione validi per il how parametro .
| Valore | Descrizione |
|---|---|
| Invia | Disabilitare l'invio in questo Socketoggetto . |
| Ricevere | Disabilitare la ricezione in questo Socketoggetto . |
| Entrambi | Disabilitare sia l'invio che la ricezione in questo Socketoggetto . |
L'impostazione how su Send specifica che le chiamate successive a Send non sono consentite. Se si usa un oggetto senza Socketconnessione, la specifica Send di non avrà alcun effetto.
L'impostazione how su Receive specifica che le chiamate successive a Receive non sono consentite. Questo non ha alcun effetto sui livelli di protocollo inferiori. Se si usa un protocollo orientato alla connessione, la connessione viene terminata se una delle condizioni seguenti esiste dopo una chiamata a Shutdown :
I dati si trovano nel buffer di rete in ingresso in attesa di essere ricevuti.
Sono arrivati altri dati.
Se si usa un protocollo senza connessione, i datagrammi vengono accettati e accodati. Tuttavia, se non è disponibile spazio buffer per altri datagrammi in ingresso, verranno eliminati e non verrà restituito alcun errore al mittente. Non è consigliabile usare Shutdown in modalità senza connessione Socket .
L'impostazione how su Both disabilita sia gli invii che i messaggi ricevuti, come descritto in precedenza.
Annotazioni
Se si riceve un oggetto SocketException quando si chiama il Shutdown metodo , 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.
Annotazioni
Questo membro restituisce informazioni di traccia quando si abilita la traccia di rete nell'applicazione. Per altre informazioni, vedere Traccia di rete in .NET Framework.