Je travaille sur une application où je dois entrer une URL et obtenir le code d'état HTTP renvoyé par cette URL. Actuellement, j'utilise les fonctions WININET pour y parvenir. Le code pour y parvenir:C++: Obtention du code d'état HTTP à partir d'une URL
hOuvre = InternetOpenA ("MYAPP", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0); hFichier = InternetOpenUrlA (hOpen, url.c_str(), NULL, 0, INTERNET_FLAG_RELOAD, 0); HttpQueryInfoA (hFichier, HTTP_QUERY_STATUS_CODE, tampon (void *), & dwBufLen, NULL);
J'ai fait quelques vérifications pour voir la performance et je peux voir qu'en moyenne un coup prend environ 300 millisecondes. Comme je vais faire plusieurs hits, le temps total arrive à environ 8-10 secondes, ce qui ralentit l'ensemble de l'application.
La même chose est atteinte sur MAC est d'environ 100 millisecondes environ (j'utilise COCOA).
Y a-t-il d'autres API sur WIN que je peux utiliser pour accélérer le processus?
Merci à l'avance, Amit
Vous pouvez utiliser la bibliothèque boost :: asio. Cela peut être plus rapide. – Xorlev
Avez-vous fait un reniflage de paquets pour voir combien de temps dure la récupération de l'URL? Le temps pris dépend de l'URL. – Murray
effectivement nous ne pouvons pas inclure toute autre bibliothèque .. donc je dois dépendre des appels C++ standard ... – eramitmodi