Socket.Close Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Ferme la connexion Socket et libère toutes les ressources associées.
Surcharges
Close() |
Ferme la connexion Socket et libère toutes les ressources associées. |
Close(Int32) |
Ferme la connexion Socket et libère toutes les ressources associées avec un délai d’attente spécifié pour permettre l’envoi des données en file d’attente. |
Close()
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Ferme la connexion Socket et libère toutes les ressources associées.
public:
void Close();
public void Close ();
member this.Close : unit -> unit
Public Sub Close ()
Exemples
L’exemple de code suivant ferme un Socket.
try
{
aSocket->Shutdown(SocketShutdown::Both);
aSocket->Close();
}
catch (...)
{
aSocket->Close();
throw;
}
if ( aSocket->Connected )
{
Console::WriteLine( "Winsock error: {0}", Convert::ToString(
System::Runtime::InteropServices::Marshal::GetLastWin32Error() ) );
}
try
{
aSocket.Shutdown(SocketShutdown.Both);
}
finally
{
aSocket.Close();
}
Try
aSocket.Shutdown(SocketShutdown.Both)
Finally
aSocket.Close()
End Try
End Sub
Remarques
La Close méthode ferme la connexion de l’hôte distant et libère toutes les ressources managées et non managées associées à .Socket Lors de la fermeture, la Connected propriété est définie sur false
.
Pour les protocoles orientés connexion, il est recommandé d’appeler Shutdown avant d’appeler la Close méthode . Cela garantit que toutes les données sont envoyées et reçues sur le socket connecté avant sa fermeture.
Si vous devez appeler Close sans appeler Shutdownd’abord , vous pouvez vous assurer que les données mises en file d’attente pour la transmission sortante seront envoyées en définissant l’option DontLingerSocketfalse
sur et en spécifiant un intervalle de délai d’attente différent de zéro.
Close se bloque ensuite jusqu’à ce que ces données soient envoyées ou jusqu’à l’expiration du délai d’attente spécifié. Si vous définissez DontLingerfalse
sur et spécifiez un intervalle de délai d’attente zéro, Close libère la connexion et ignore automatiquement les données en file d’attente sortantes.
Notes
Pour définir l’option DontLinger socket sur false
, créez un LingerOption, définissez la propriété enabled sur true
et définissez la LingerTime propriété sur le délai d’attente souhaité. Utilisez cette option LingerOption avec l’option DontLinger socket pour appeler la SetSocketOption méthode .
Notes
Ce membre génère des informations de traçage lorsque vous activez le traçage réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.
Voir aussi
S’applique à
Close(Int32)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Ferme la connexion Socket et libère toutes les ressources associées avec un délai d’attente spécifié pour permettre l’envoi des données en file d’attente.
public:
void Close(int timeout);
public void Close (int timeout);
member this.Close : int -> unit
Public Sub Close (timeout As Integer)
Paramètres
- timeout
- Int32
Attendez jusqu’à timeout
quelques millisecondes pour envoyer les données restantes, puis fermez le socket.
Exemples
L’exemple de code suivant montre comment fermer un Socket.
try
{
aSocket->Shutdown(SocketShutdown::Both);
aSocket->Close();
}
catch (...)
{
aSocket->Close();
throw;
}
if ( aSocket->Connected )
{
Console::WriteLine( "Winsock error: {0}", Convert::ToString(
System::Runtime::InteropServices::Marshal::GetLastWin32Error() ) );
}
try
{
aSocket.Shutdown(SocketShutdown.Both);
}
finally
{
aSocket.Close();
}
Try
aSocket.Shutdown(SocketShutdown.Both)
Finally
aSocket.Close()
End Try
End Sub
Remarques
La Close méthode ferme la connexion de l’hôte distant et libère toutes les ressources managées et non managées associées à .Socket Lors de la fermeture, la Connected propriété est définie sur false
.
Pour les protocoles orientés connexion, il est recommandé d’appeler Shutdown avant d’appeler Close. Cela garantit que toutes les données sont envoyées et reçues sur le socket connecté avant sa fermeture.
Si vous devez appeler Close sans appeler Shutdownd’abord , vous pouvez vous assurer que les données mises en file d’attente pour la transmission sortante seront envoyées en définissant l’option DontLingerfalse
sur et en spécifiant un intervalle de délai d’attente différent de zéro.
Close se bloque ensuite jusqu’à ce que ces données soient envoyées ou jusqu’à l’expiration du délai d’attente spécifié. Si vous définissez DontLingerfalse
sur et spécifiez un intervalle de délai d’attente zéro, Close libère la connexion et ignore automatiquement les données en file d’attente sortantes.
Notes
Pour définir l’option DontLinger socket sur false
, créez un LingerOption, définissez la propriété enabled sur true
et définissez la LingerTime propriété sur le délai d’attente souhaité. Utilisez cette option LingerOption avec l’option DontLinger socket pour appeler la SetSocketOption méthode .
Notes
Ce membre génère des informations de traçage lorsque vous activez le traçage réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.