Sockets dans .NET
L’espace de noms System.Net.Sockets contient une implémentation de mise en réseau managée et multiplateforme de sockets. Toutes les autres classes d’accès réseau dans l’espace de noms System.Net s’appuient sur cette implémentation de sockets.
La classe Socket est une version de code managé des services de socket fournis reposant sur l’interopérabilité native avec Linux, macOS ou Windows. Dans la plupart des cas, les méthodes de la classe Socket
ne font que marshaler les données dans leurs équivalents natifs et gérer les vérifications de sécurité nécessaires.
La classe Socket
prend en charge deux modes de base : le mode synchrone et le mode asynchrone. En mode synchrone, les appels aux fonctions qui effectuent des opérations réseau (telles que SendAsync et ReceiveAsync) attendent que l’opération soit terminée avant de restituer le contrôle au programme appelant. En mode asynchrone, ces appels retournent immédiatement.