Я создаю приложение Qt и использую QNetworkAccessManager для управления моими http-запросами.Из-за асинхронной природы QNetworkAccessManager вы должны привязать слот для получения QNetworkReply, когда это будет сделано.
Я новичок в многопоточном дизайне, поэтому не знаю, как с этим справиться.У меня будет 3 отдельных типа сетевых ответов, которые необходимо проанализировать в связанном слоте, а затем передать правильному обработчику.Один извлечет ссылку, второй извлечет картинку, а третий проанализирует ответ на запрос, чтобы убедиться в его успешности.Все это происходит в подклассе QWidget.
Итак, мне интересно, как это обычно обрабатывается.На мой взгляд, основываясь исключительно на интуиции, так как я мало читал по этому конкретному вопросу, я думаю, что есть два способа справиться с этим.Один из них заключается в повторном связывании сигнала сигнала завершения () менеджера сети в зависимости от вызова, а другой - в использовании каких-либо флагов состояния и проверке их, чтобы увидеть ожидаемый ответ.Какой метод предпочтителен, не обязательно между этими двумя, это только то, что я мог придумать, кто-то более опытный вполне может найти лучшее решение.
Теперь я тоже довольно плохо знаком с c ++, так что есличем позже, тем лучше, как лучше обращаться с флагами в этом случае?Буду ли я использовать набор битов, функцию установки enum / flag или что-то еще?Спасибо, ребята!