System.Net.Sockets.Socket-Klasse

Dieser Artikel enthält ergänzende Hinweise zur Referenzdokumentation für diese API.

Die Socket Klasse bietet eine vielzahl von Methoden und Eigenschaften für die Netzwerkkommunikation. Mit Socket der Klasse können Sie synchrone und asynchrone Datenübertragungen mit einem der in der ProtocolType Enumeration aufgeführten Kommunikationsprotokolle durchführen.

Die Socket Klasse folgt dem .NET-Benennungsmuster für asynchrone Methoden. Die synchrone Receive Methode entspricht beispielsweise den asynchronen ReceiveAsync Varianten.

Verwenden Sie die folgenden Methoden für den synchronen Betriebsmodus:

  • Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden, kann Ihr Server mithilfe der Listen Methode auf Verbindungen lauschen. Die Accept Methode verarbeitet alle eingehenden Verbindungsanforderungen und gibt einen Socket Wert zurück, den Sie verwenden können, um Daten mit dem Remotehost zu kommunizieren. Verwenden Sie diese Zurückgegebene Socket , um die Send Methode aufzurufen Receive . Rufen Sie die Methode vor dem Aufrufen der BindListen Methode auf, wenn Sie die lokale IP-Adresse und Portnummer angeben möchten. Verwenden Sie eine Portnummer null, wenn Der zugrunde liegende Dienstanbieter einen kostenlosen Port für Sie zuweisen soll. Wenn Sie eine Verbindung mit einem Überwachungshost herstellen möchten, rufen Sie die Connect Methode auf. Rufen Sie die Send Methode auf Receive , um Daten zu kommunizieren.
  • Wenn Sie ein verbindungsloses Protokoll wie UDP verwenden, müssen Sie überhaupt keine Verbindungen überwachen. Rufen Sie die ReceiveFrom Methode auf, um eingehende Datagramme zu akzeptieren. Verwenden Sie die SendTo Methode, um Datagramme an einen Remotehost zu senden.

Verwenden Sie die folgenden Methoden, um die Kommunikation asynchron zu verarbeiten:

  • Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden, verwenden Sie ConnectAsync die Verbindung mit einem Überwachungshost. Verwenden SendAsync oder ReceiveAsync kommunizieren Sie Daten asynchron. Eingehende Verbindungsanforderungen können mithilfe von AcceptAsync.
  • Wenn Sie ein verbindungsloses Protokoll wie UDP verwenden, können SendToAsync Sie Datagramme senden und ReceiveFromAsyncDatagramme empfangen.

Wenn Sie mehrere asynchrone Vorgänge in einem Socket ausführen, werden sie nicht unbedingt in der Reihenfolge abgeschlossen, in der sie gestartet werden.

Wenn Sie mit dem Senden und Empfangen von Daten fertig sind, deaktivieren Sie die ShutdownSocketMethode. Rufen Sie nach dem Aufrufen Shutdowndie Close Methode auf, um alle ressourcen freizugeben, die dem Socket.

Mit Socket der Klasse können Sie Ihre Socket Methode mithilfe der SetSocketOption Methode konfigurieren. Rufen Sie diese Einstellungen mithilfe der GetSocketOption Methode ab.