[C#] y-a-t-il une Classe plus rapide que HttpWebRequest
Karibot
Messages postés89Date d'inscriptionmardi 19 janvier 2010StatutMembreDernière intervention21 juin 2016
-
30 avril 2012 à 18:59
Eijy
Messages postés2Date d'inscriptionjeudi 11 mai 2006StatutMembreDernière intervention 6 mai 2012
-
6 mai 2012 à 18:33
Bonjour,
tout est dans le sujet.
en fait, je travaille sur un projet qui a pour finalité de récupérer les éléments d'une page html pour vérifier si une information est contenu dedans.
j'ai donc une liste d'urls à télécharger. pour l'instant je le fais avec HttpWebRequest mais c'est très lent.
Lorsque j'utilise un profiler sur mon programme, je me rend compte que ma fonction qui télécharge (getwebpage()) prend 99% du temps de calcul et j'aimerai donc travailler dessus pour rendre mon programme encore plus rapide.
j'aimerai également utiliser un threadpool pour lancer plusieurs téléchargement en parallel mais je n'y arrive pas, vous avez des exemples pour m'aider?
voici mon code (je n'ai pas mon programme sous la main en ce moment meme, donc j'ai rettapé le code.. s'il y a de petites coquilles ce n'est pas grave, ce code fonctionne très bien mais c juste que c'est lent).
Je rajoute que le site répond très vite, ce n'est donc pas un problème de performances serveur.
voila, je vous donne le code juste pour que vous compreniez comment je procède.
j'ai lu quelque part que la fonction getresponse() de la classe HttpWebRequest, ne gère pas le multithreading c'est à dire que si je lance 10 interrogations simultannées, en fait arrivé à cette fonction, tout passe un par un (je ne sais pas si je suis clair).
donc je cherche une alternative pertinente à cette classe.
merci pour votre aide.
A voir également:
[C#] y-a-t-il une Classe plus rapide que HttpWebRequest
Eijy
Messages postés2Date d'inscriptionjeudi 11 mai 2006StatutMembreDernière intervention 6 mai 2012 6 mai 2012 à 18:33
Bonjour,
j'ai lu quelque part que la fonction getresponse() de la classe HttpWebRequest, ne gère pas le multithreading c'est à dire que si je lance 10 interrogations simultanées, en fait arrivé à cette fonction, tout passe un par un (je ne sais pas si je suis clair).