Socket.BeginDisconnect(Boolean, AsyncCallback, Object) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Inicia uma solicitação assíncrona para se desconectar de um ponto de extremidade remoto.
public:
IAsyncResult ^ BeginDisconnect(bool reuseSocket, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginDisconnect (bool reuseSocket, AsyncCallback? callback, object? state);
public IAsyncResult BeginDisconnect (bool reuseSocket, AsyncCallback callback, object state);
member this.BeginDisconnect : bool * AsyncCallback * obj -> IAsyncResult
Public Function BeginDisconnect (reuseSocket As Boolean, callback As AsyncCallback, state As Object) As IAsyncResult
Parâmetros
- reuseSocket
- Boolean
true
se o soquete puder ser reutilizado após a conexão ser fechada; caso contrário, false
.
- callback
- AsyncCallback
O delegado AsyncCallback.
- state
- Object
Um objeto que contém informações de estado para essa solicitação.
Retornos
Um objeto IAsyncResult que faz referência à operação assíncrona.
Exceções
O objeto Socket foi fechado.
.NET Framework e .NET 5 e somente anteriores: ocorreu um erro ao tentar acessar o soquete.
Comentários
Importante
Essa é uma API de compatibilidade. Não recomendamos usar os métodos APM (Begin*
e End*
) para novo desenvolvimento. Em vez disso, use os Task
equivalentes baseados em .
Se você estiver usando um protocolo orientado à conexão, poderá chamar o BeginDisconnect método para iniciar a desconexão de um ponto de extremidade remoto. Se reuseSocket
for true
, você poderá reutilizar o soquete.
Você pode passar um retorno de chamada que implementa AsyncCallback para BeginDisconnect ser notificado sobre a conclusão da operação de desconexão. Observe que, se a pilha de rede subjacente concluir a operação de forma síncrona, o retorno de chamada poderá ser executado embutido durante a chamada para BeginDisconnect. Nesse caso, a CompletedSynchronously propriedade no retornado IAsyncResult será definida como true
para indicar que o método foi concluído de forma síncrona. Use a AsyncState propriedade do IAsyncResult para obter o objeto de estado passado para o BeginDisconnect método .
A BeginDisconnect operação deve ser concluída chamando o EndDisconnect método . Normalmente, o método é invocado pelo delegado fornecido AsyncCallback . EndDisconnect bloqueará o thread de chamada até que a operação seja concluída.
Observação
Se você receber uma SocketException exceção, use a SocketException.ErrorCode propriedade para obter o código de erro específico.
Observação
Esse membro emite o rastreamento de informações quando você ativa o rastreamento de rede em seu aplicativo. Para obter mais informações, consulte Rastreamento de rede em .NET Framework.