SslStream.EndWrite(IAsyncResult) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
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)
パラメーター
- asyncResult
- IAsyncResult
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) の呼び出しによって返される IAsyncResult インスタンス。
例外
asyncResult
が null
です。
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) への呼び出しで asyncResult
が作成されませんでした。
書き込み操作に失敗しました。
例
次のコード例では、非同期書き込み操作を終了する方法を示します。
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();
}
注釈
操作が完了していない場合、このメソッドは完了するまでブロックします。
正常に認証されるまで、アプリケーションはこのメソッドを呼び出すことができません。 認証するには、、BeginAuthenticateAsClientAuthenticateAsServerBeginAuthenticateAsServer、のいずれかのメソッドをAuthenticateAsClient呼び出します。
この操作を同期的に実行するには、 メソッドを使用します Write 。
適用対象
.NET