Название: QNetworkAccessManager метод get Отправлено: BuRn от Август 27, 2013, 11:24 Добрый день. Правильно ли я понял, что если я сделаю что - то типа :
Код: QNetworkAccessManager manager; Название: Re: QNetworkAccessManager метод get Отправлено: mutineer от Август 27, 2013, 11:27 В очередь станут 99994 запроса)))
Название: Re: QNetworkAccessManager метод get Отправлено: BuRn от Август 27, 2013, 11:30 В очередь станут 99994 запроса))) как это скажется на производительности ? или лучше все же эмитить какой - нибудь сигнал что освободилось место и делать еще один гет ?Название: Re: QNetworkAccessManager метод get Отправлено: mutineer от Август 27, 2013, 11:34 Зачем тебе вообще одновременно 100к гетов? Почему их последовательно не выполнить?
Название: Re: QNetworkAccessManager метод get Отправлено: BuRn от Август 27, 2013, 11:40 Зачем тебе вообще одновременно 100к гетов? Почему их последовательно не выполнить? Парсер. Я думаю если одновременно будет обрабатываться хотя бы по 6, то явно будет быстрее. Название: Re: QNetworkAccessManager метод get Отправлено: mutineer от Август 27, 2013, 11:44 Одна и та же страница будет обрабатываться 100 раз?
Быстрее будет не особо - загружаются страницы асинхронно, но передаваться тебе будут в один поток Название: Re: QNetworkAccessManager метод get Отправлено: BuRn от Август 27, 2013, 11:47 Одна и та же страница будет обрабатываться 100 раз? естественно страницы разные, это я пример просто привел, так будет происходить гет по вектору QString-ов в которых лежат урлыБыстрее будет не особо - загружаются страницы асинхронно, но передаваться тебе будут в один поток Название: Re: QNetworkAccessManager метод get Отправлено: mutineer от Август 27, 2013, 12:08 ИМХО лучше делать запрос по необходимости, а не забивать внутреннюю очередь "навырост"
Название: Re: QNetworkAccessManager метод get Отправлено: alex312 от Август 27, 2013, 14:10 одновременно 100 запросов к гуглу Не шутите так с гуглом - забанят !Название: Re: QNetworkAccessManager метод get Отправлено: schmidt от Август 28, 2013, 13:02 Зачем тебе вообще одновременно 100к гетов? Почему их последовательно не выполнить? Парсер. Я думаю если одновременно будет обрабатываться хотя бы по 6, то явно будет быстрее. +1 :) Чтобы что-то выполнялось параллельно, нужно выполнять это в нескольких потоках. Я не силен в многопоточном программировании на Qt, но код ваш, скорее всего должен выглядеть так: Код: void proceedNextUrlFromSharedVector() { А потом эту самую функцию используйте в качестве стартовой при создании потока. Ну и, разумеется, когда ваш слот обработает ответ сервера, вам придется каким-то образом подчистить за собой память перед завершением потока, выделенную в proceedNextUrlFromSharedVector(). |