Partilhar via


AspNetWebSocket.CloseAsync Método

Definição

Envia uma mensagem assíncrona para um cliente a fim de fechar a conexão. Se o servidor inicia a solicitação para fechar a conexão, o método espera o cliente confirmar a solicitação antes de retornar.

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

Parâmetros

closeStatus
WebSocketCloseStatus

O código de status da operação de fechamento.

statusDescription
String

A mensagem de status da operação de fechamento.

cancellationToken
CancellationToken

O objeto que cancela uma operação pendente.

Retornos

Uma referência para a operação.

Exceções

O objeto AspNetWebSocket foi descartado anteriormente.

O objeto AspNetWebSocket está em um estado anulado.

- ou -

As operações de envio não estão disponíveis.

- ou -

As operações de recebimento não estão disponíveis.

O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.

Comentários

Você pode usar os CloseAsync métodos e CloseOutputAsync para solicitações iniciadas pelo cliente e iniciadas pelo servidor para fechar uma conexão AspNetWebSocket . Os dois métodos lidam com solicitações iniciadas pelo cliente da mesma maneira: depois que o cliente envia uma mensagem ao servidor para fechar a conexão, o servidor chama um desses métodos e envia uma confirmação para o cliente e, em seguida, o método retorna.

Para solicitações iniciadas pelo servidor, os dois métodos funcionam de forma diferente. O CloseAsync método envia uma mensagem ao cliente para fechar a conexão, aguarda uma resposta e retorna. O servidor não aguarda nenhum dado adicional enviado pelo cliente. Por outro lado, o CloseOutputAsync método envia uma mensagem ao cliente para fechar a conexão e retorna sem aguardar uma resposta. Depois que o método retornar, você poderá chamar o ReceiveAsync método e manipular dados adicionais ou a confirmação que o cliente envia.

Aplica-se a