HttpResponse.ClientDisconnectedToken Eigenschaft

Definition

Ruft ein CancellationToken Objekt ab, das übersprungen wird, wenn der Client die Verbindung trennt.

public:
 property System::Threading::CancellationToken ClientDisconnectedToken { System::Threading::CancellationToken get(); };
public System.Threading.CancellationToken ClientDisconnectedToken { get; }
member this.ClientDisconnectedToken : System.Threading.CancellationToken
Public ReadOnly Property ClientDisconnectedToken As CancellationToken

Eigenschaftswert

Das Abbruchtoken.

Hinweise

Diese API ist threadsicher. Es gibt jedoch einige Einschränkungen für die Verwendung des Abbruchtokens. Die Verwendung kann zu Rennbedingungen, Deadlocks oder einem anderen unerwarteten Verhalten führen. Beachten Sie die folgenden Richtlinien:

  • Stellen Sie sicher, dass Sie diese API nicht außerhalb der Grenzen einer einzelnen Anforderung aufrufen, da ASP.NET das Abbruchtoken am Ende der Anforderung verwerfen wird. Es gibt keine Garantie dafür, dass das Token jemals in einen abgebrochenen Zustand wechselt, bevor es verworfen wird. Wenn die Anforderung beispielsweise abgeschlossen ist, ohne dass der Client die Verbindung getrennt hat, wird das Token gelöscht, ohne zuvor abgebrochen zu werden.

  • Warten Sie nicht auf das CancellationToken.WaitHandle, da dies den Zweck einer asynchronen Benachrichtigung besiegt und kann Deadlocks verursachen.

  • Rufen Sie nicht die CancellationToken.Register Überladungen auf, die den Rückruf für das ursprüngliche SynchronizationContext Objekt aufrufen.

  • Verwenden Sie das HttpContext-Objekt oder andere nicht threadsichere ASP.NET systeminternen Objekte nicht innerhalb des Rückrufs, der der CancellationToken.Register-Methode bereitgestellt wird. Der Rückruf kann gleichzeitig mit anderen ASP.NET oder Anwendungscode ausgeführt werden.

  • Halten Sie die Rückrufmethoden kurz ausgeführt und nicht blockieren.

  • Bemühen Sie sich, Ausnahmen aus den Rückrufmethoden zu vermeiden.

Diese Eigenschaft wird nur im integrierten Modus im Internetinformationsdienst (IIS) 7.5 oder höher unterstützt. Wenn Sie sie ohne die richtige IIS-Version oder den richtigen Pipelinemodus aufrufen, wird ein PlatformNotSupportedException Fehler ausgelöst. Verwenden Sie IISVersiondie IIS-Version, um die IIS-Version zu ermitteln. Um den Pipelinemodus zu ermitteln, verwenden Sie UsingIntegratedPipeline.

Gilt für: