Question

Existe-t-il des problèmes liés à l'annulation des requêtes HTTP HttpWebRequest? Nous constatons que lorsque nous annulons 4 à 5 demandes, la demande suivante est suspendue indéfiniment.

S'il n'y a pas de problèmes connus avec cela, alors je vais probablement faire quelque chose de mal ... Où est un bon exemple de ressource qui montre comment cela fonctionne (une solution complète, pas quelques extraits de code)?

S'il y a des problèmes connus, que puis-je faire pour les résoudre, afin d'annuler efficacement autant de demandes que nécessaire?

Était-ce utile?

La solution

Après avoir annulé la demande, veillez à fermer le flux de réponses, sinon vous aurez des fuites.

J'utilise habituellement " using " lorsque vous obtenez la réponse de la requête Web pour vous assurer que la réponse est fermée:

WebRequest request = WebRequest.Create("http://google.com");

using (WebResponse response = request.GetResponse())
{
   //do my job
}

Ainsi, même si vous annulez la demande ou si une exception est levée lors de la lecture de la réponse, le flux de réponse et son flux seront fermés.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top