Udostępnij za pośrednictwem


AspNetWebSocket.CloseOutputAsync Metoda

Definicja

Wysyła do klienta komunikat asynchroniczny, aby zamknąć połączenie. Jeśli serwer inicjuje żądanie zamknięcia połączenia, metoda zwraca się bez oczekiwania na odpowiedź.

public:
 override System::Threading::Tasks::Task ^ CloseOutputAsync(System::Net::WebSockets::WebSocketCloseStatus closeStatus, System::String ^ statusDescription, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task CloseOutputAsync (System.Net.WebSockets.WebSocketCloseStatus closeStatus, string statusDescription, System.Threading.CancellationToken cancellationToken);
override this.CloseOutputAsync : System.Net.WebSockets.WebSocketCloseStatus * string * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function CloseOutputAsync (closeStatus As WebSocketCloseStatus, statusDescription As String, cancellationToken As CancellationToken) As Task

Parametry

closeStatus
WebSocketCloseStatus

Kod stanu operacji zamknięcia.

statusDescription
String

Komunikat o stanie operacji zamknięcia.

cancellationToken
CancellationToken

Obiekt, który anuluje oczekującą operację.

Zwraca

Odwołanie do operacji.

Wyjątki

Obiekt został wcześniej usunięty.

Obiekt AspNetWebSocket jest w stanie przerwanym.

-lub-

Operacje wysyłania są niedostępne.

Token anulowania został anulowany. Ten wyjątek jest przechowywany w zwróconym zadaniu.

Uwagi

Za pomocą metod i CloseOutputAsync można użyć CloseAsync zarówno żądań zainicjowanych przez klienta, jak i żądań zainicjowanych przez serwer, aby zamknąć AspNetWebSocket połączenie. Dwie metody obsługują żądania inicjowane przez klienta w taki sam sposób: po wysłaniu komunikatu do serwera w celu zamknięcia połączenia serwer wywołuje jedną z tych metod i wysyła potwierdzenie do klienta, a następnie metoda zwraca.

W przypadku żądań zainicjowanych przez serwer dwie metody działają inaczej. Metoda CloseAsync wysyła komunikat do klienta, aby zamknąć połączenie, czeka na odpowiedź, a następnie zwraca. Serwer nie czeka na dodatkowe dane wysyłane przez klienta. CloseOutputAsync Natomiast metoda wysyła do klienta komunikat, aby zamknąć połączenie i powrócić bez oczekiwania na odpowiedź. Po powrocie metody można wywołać metodę ReceiveAsync i obsłużyć dodatkowe dane lub potwierdzenie wysyłane przez klienta.

Dotyczy