SslStream.EndWrite(IAsyncResult) 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.
Encerra uma operação de gravação assíncrona iniciada em uma chamada anterior a BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object).
public:
override void EndWrite(IAsyncResult ^ asyncResult);
public override void EndWrite (IAsyncResult asyncResult);
override this.EndWrite : IAsyncResult -> unit
Public Overrides Sub EndWrite (asyncResult As IAsyncResult)
Parâmetros
- asyncResult
- IAsyncResult
Uma instância IAsyncResult retornada por uma chamada a BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object).
Exceções
asyncResult
é null
.
O asyncResult
não foi criado por uma chamada a BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object).
Não há nenhuma operação de gravação pendente a ser concluída.
- ou -
A autenticação não ocorreu.
A operação de gravação falhou.
Exemplos
O exemplo de código a seguir demonstra o fim de uma operação de gravação assíncrona.
void WriteCallback( IAsyncResult^ ar )
{
ClientState^ state = dynamic_cast<ClientState^>(ar->AsyncState);
SslStream^ stream = state->stream;
try
{
Console::WriteLine( L"Writing data to the client." );
stream->EndWrite( ar );
}
catch ( Exception^ writeException )
{
Console::WriteLine( L"Write error: {0}", writeException->Message );
state->Close();
return;
}
Console::WriteLine( L"Finished with client." );
state->Close();
}
void WriteCallback(IAsyncResult ar)
{
ClientState state = (ClientState) ar.AsyncState;
SslStream stream = state.stream;
try
{
Console.WriteLine("Writing data to the client.");
stream.EndWrite(ar);
}
catch (Exception writeException)
{
Console.WriteLine("Write error: {0}",
writeException.Message);
state.Close();
return;
}
Console.WriteLine("Finished with client.");
state.Close();
}
Comentários
Se a operação não tiver sido concluída, esse método será bloqueado até que o faça.
Um aplicativo não pode chamar esse método até que você tenha se autenticado com êxito. Para autenticar, chame um dos AuthenticateAsClientmétodos , ou BeginAuthenticateAsClient, BeginAuthenticateAsServerAuthenticateAsServer.
Para executar essa operação de forma síncrona, use o Write método .