SslStream.EndWrite(IAsyncResult) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Termine une opération d'écriture asynchrone démarrée avec un appel précédent à 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)
Paramètres
- asyncResult
- IAsyncResult
Instance de IAsyncResult retournée par un appel à BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object).
Exceptions
asyncResult
a la valeur null
.
asyncResult
n'a pas été créé par un appel à la méthode BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object).
Aucune opération d'écriture n'est en attente d'achèvement.
- ou -
L'authentification n'a pas été effectuée.
L'opération d'écriture a échoué.
Exemples
L’exemple de code suivant illustre la fin d’une opération d’écriture asynchrone.
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();
}
Remarques
Si l’opération n’est pas terminée, cette méthode se bloque jusqu’à ce qu’elle le fasse.
Une application ne peut pas appeler cette méthode tant que vous n’avez pas réussi à vous authentifier. Pour vous authentifier, appelez l’une AuthenticateAsClientdes méthodes , ou BeginAuthenticateAsClient, AuthenticateAsServer. BeginAuthenticateAsServer
Pour effectuer cette opération de manière synchrone, utilisez la Write méthode .