NegotiateStream.EndWrite(IAsyncResult) Método

Definição

Encerra uma operação de gravação assíncrona que foi iniciada com uma chamada para 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 para 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 a seguir demonstra um método chamado para concluir a operação de gravação assíncrona. Para obter um exemplo que demonstra como iniciar a operação, consulte BeginWrite.

// The following method is called when the write operation completes.
static void EndWriteCallback( IAsyncResult^ ar )
{
   Console::WriteLine( L"Client ending write operation..." );
   NegotiateStream^ authStream = dynamic_cast<NegotiateStream^>(ar->AsyncState);
   
   // End the asynchronous operation.
   authStream->EndWrite( ar );
}

' The following method is called when the write operation completes.
Public Shared Sub EndWriteCallback(ar As IAsyncResult)

    Console.WriteLine("Client ending write operation...")
    Dim authStream = CType(ar.AsyncState, NegotiateStream)

    ' End the asynchronous operation.
    authStream.EndWrite(ar)

End Sub

Comentários

Se a operação não tiver sido concluída, esse método será bloqueado até que o faça.

Não é possível chamar esse método até que você tenha se autenticado com êxito. Para autenticar, chame um dos AuthenticateAsClientmétodos , AuthenticateAsClientAsync, BeginAuthenticateAsClient, AuthenticateAsServer, AuthenticateAsServerAsyncou BeginAuthenticateAsServer .

Para executar essa operação de forma síncrona, use o Write método .

Aplica-se a