NegotiateStream.EndWrite(IAsyncResult) Method

Definition

Ends an asynchronous write operation that was started with a call to 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)

Parameters

Exceptions

asyncResult is null.

The asyncResult was not created by a call to BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object).

There is no pending write operation to complete.

-or-

Authentication has not occurred.

The write operation failed.

Examples

The following example demonstrates a method that is called to complete the asynchronous write operation. For an example that demonstrates starting the operation, see 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

Remarks

If the operation has not completed, this method blocks until it does.

You cannot call this method until you have successfully authenticated. To authenticate, call one of the AuthenticateAsClient, AuthenticateAsClientAsync, BeginAuthenticateAsClient, AuthenticateAsServer, AuthenticateAsServerAsync, or BeginAuthenticateAsServer methods.

To perform this operation synchronously, use the Write method.

Applies to