SslStream::EndWrite Method (IAsyncResult^)
Ends an asynchronous write operation started with a previous call to BeginWrite.
Assembly: System (in System.dll)
Parameters
- asyncResult
-
Type:
System::IAsyncResult^
An IAsyncResult instance returned by a call to BeginWrite
| Exception | Condition |
|---|---|
| ArgumentNullException | asyncResult is null. |
| ArgumentException | asyncResult was not created by a call to BeginWrite. |
| InvalidOperationException | There is no pending write operation to complete. |
| IOException | The write operation failed. |
| InvalidOperationException | Authentication has not occurred. |
If the operation has not completed, this method blocks until it does.
An application cannot call this method until you have successfully authenticated. To authenticate, call one of the AuthenticateAsClient, or BeginAuthenticateAsClient, AuthenticateAsServer, BeginAuthenticateAsServer methods.
To perform this operation synchronously, use the Write method.
The following code example demonstrates ending an asynchronous write operation.
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(); }
Available since 2.0