Socket.Close Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Schließt die Socket Verbindung und gibt alle zugehörigen Ressourcen frei.
Überlädt
| Name | Beschreibung |
|---|---|
| Close() |
Schließt die Socket Verbindung und gibt alle zugehörigen Ressourcen frei. |
| Close(Int32) |
Schließt die Socket Verbindung und gibt alle zugeordneten Ressourcen mit einem angegebenen Timeout frei, um das Senden von in die Warteschlange eingereihten Daten zu ermöglichen. |
Close()
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
Schließt die Socket Verbindung und gibt alle zugehörigen Ressourcen frei.
public:
void Close();
public void Close();
member this.Close : unit -> unit
Public Sub Close ()
Beispiele
Im folgenden Codebeispiel wird ein Socket.
try
{
aSocket.Shutdown(SocketShutdown.Both);
}
finally
{
aSocket.Close();
}
Try
aSocket.Shutdown(SocketShutdown.Both)
Finally
aSocket.Close()
End Try
End Sub
Hinweise
Die Close Methode schließt die Remotehostverbindung und gibt alle verwalteten und nicht verwalteten Ressourcen frei, die dem SocketZugeordneten zugeordnet sind. Beim Schließen wird die Connected Eigenschaft auf false.
Für verbindungsorientierte Protokolle wird empfohlen, vor dem Aufrufen der Close Methode aufzurufenShutdown. Dadurch wird sichergestellt, dass alle Daten an den verbundenen Socket gesendet und empfangen werden, bevor sie geschlossen werden.
Wenn Sie ohne ersten Anruf anrufen Close müssen, können Sie sicherstellen, dass die für die ausgehende Übertragung in die Warteschlange eingereihten Daten gesendet werden, indem Sie dieSocketDontLingerOption festlegen false und ein Timeoutintervall ohne Null Shutdownangeben.
Close wird dann blockiert, bis diese Daten gesendet werden oder bis das angegebene Timeout abläuft. Wenn Sie ein false Timeoutintervall null festlegen DontLinger und angeben, Close wird die Verbindung losgelassen und ausgehende Daten in der Warteschlange automatisch verworfen.
Hinweis
Um die DontLinger Socketoption auf falsefestzulegen, erstellen Sie eine LingerOption, legen Sie die aktivierte Eigenschaft auf true, und legen Sie die LingerTime Eigenschaft auf den gewünschten Timeoutzeitraum fest. Verwenden Sie dies LingerOption zusammen mit der DontLinger Socketoption, um die SetSocketOption Methode aufzurufen.
Hinweis
Dieses Mitglied gibt Protokollierungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in Ihrer Anwendung aktivieren. Weitere Informationen finden Sie unter Network Tracing in .NET Framework.
Weitere Informationen
Gilt für:
Close(Int32)
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
Schließt die Socket Verbindung und gibt alle zugeordneten Ressourcen mit einem angegebenen Timeout frei, um das Senden von in die Warteschlange eingereihten Daten zu ermöglichen.
public:
void Close(int timeout);
public void Close(int timeout);
member this.Close : int -> unit
Public Sub Close (timeout As Integer)
Parameter
- timeout
- Int32
Warten Sie bis zu timeout Millisekunden, um alle verbleibenden Daten zu senden, und schließen Sie dann den Socket.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie ein Socket.
try
{
aSocket.Shutdown(SocketShutdown.Both);
}
finally
{
aSocket.Close();
}
Try
aSocket.Shutdown(SocketShutdown.Both)
Finally
aSocket.Close()
End Try
End Sub
Hinweise
Die Close Methode schließt die Remotehostverbindung und gibt alle verwalteten und nicht verwalteten Ressourcen frei, die dem SocketZugeordneten zugeordnet sind. Beim Schließen wird die Connected Eigenschaft auf false.
Bei verbindungsorientierten Protokollen wird empfohlen, vor dem Aufrufen aufzurufen ShutdownClose. Dadurch wird sichergestellt, dass alle Daten an den verbundenen Socket gesendet und empfangen werden, bevor sie geschlossen werden.
Wenn Sie ohne ersten Anruf Shutdownanrufen Close müssen, können Sie sicherstellen, dass die für die ausgehende Übertragung in die Warteschlange eingereihten Daten gesendet werden, indem Sie die DontLinger Option festlegen false und ein Timeoutintervall ohne Null angeben.
Close wird dann blockiert, bis diese Daten gesendet werden oder bis das angegebene Timeout abläuft. Wenn Sie ein false Timeoutintervall null festlegen DontLinger und angeben, Close wird die Verbindung losgelassen und ausgehende Daten in der Warteschlange automatisch verworfen.
Hinweis
Um die DontLinger Socketoption auf falsefestzulegen, erstellen Sie eine LingerOption, legen Sie die aktivierte Eigenschaft auf true, und legen Sie die LingerTime Eigenschaft auf den gewünschten Timeoutzeitraum fest. Verwenden Sie dies LingerOption zusammen mit der DontLinger Socketoption, um die SetSocketOption Methode aufzurufen.
Hinweis
Dieses Mitglied gibt Protokollierungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in Ihrer Anwendung aktivieren. Weitere Informationen finden Sie unter Network Tracing in .NET Framework.