J'ai une situation où je fais un asyncappel à une méthode qui retourne et IDisposableinstance. Par exemple:
HttpResponseMessage response = await httpClient.GetAsync(new Uri("http://www.google.com"));
Maintenant, avant asyncétait sur la scène, lorsque vous travaillez avec une IDisposableinstance, cet appel et le code qui utilisait la variable "response" seraient enveloppés dans une instruction using.
Ma question est de savoir si c'est toujours la bonne approche lorsque le asyncmot-clé est jeté dans le mélange? Même si le code se compile, l'instruction using fonctionnera-t-elle toujours comme prévu dans les deux exemples ci-dessous?
Exemple 1
using(HttpResponseMessage response = await httpClient.GetAsync(new Uri("http://www.google.com")))
{
// Do something with the response
return true;
}
Exemple 2
using(HttpResponseMessage response = await httpClient.GetAsync(new Uri("http://www.google.com")))
{
await this.responseLogger.LogResponseAsync(response);
return true;
}