Timeout tritt auf, wenn eine Anwendung die Poll-Methode aufruft

Originalversion des Produkts:   .NET Core

Problembeschreibung

Ein Timeout tritt auf, wenn Sie eine Anwendung ausführen, die die System.Net.Security.SslStream Klasse verwendet und die System.Net.Socket.Poll Methode aufruft, um Daten im zugrunde liegenden Socket zu überprüfen. In diesem Fall gibt die Poll Methode "false" zurück.

Ursache

Die SslStream Klasse liest Daten schneller aus dem Socket, als die Anwendung Daten aus dem Datenstrompuffer lesen kann.

Problemumgehung

Wenden Sie eine der folgenden Methoden an, um dieses Problem zu umgehen:

  • Verwenden Sie die Poll Methode nicht in der Anwendung. Verwenden Sie stattdessen das APM-Muster (Asynchronous Programming Model ), um Rückrufe abzurufen, wenn Daten eintreffen.
  • Wenn Sie die Poll Methode verwenden müssen, stellen Sie sicher, dass alle Daten des Datenstrompuffers gelesen wurden, wenn die Methode "true" zurückgibt, bevor Sie einen weiteren Poll Aufruf ausführen.