QNetworkAccessManager and threads



  • Доброго времени суток.

    Есть main тред, в котором и создан QNetworkAccessManager. Есть еще N тредов, из которых нужно отправлять запросы. Из другого треда нельзя посылать запрос в NAM, пушо оно не может создать QNetworkReply (тред парента не совпадает с текущим). В других тредах мне нельзя создавать еще один NAM, т.к я постоянно делаю msleep (нужно, чтобы сообщения отправлялись через малый интервал времени, другого решения этого не нашел), и по этому работа NAM (и ответов на запросы) будет очень медленной, а это плохо.
    Собственно что в этом случае делать? Единтсвенное, что приходит в голову, это эмитить сигналы из треда в main тред, чтобы тот уже отпрвил сообщение. Но уж больно это не красиво...



  • Другого варианта не знаю. Сам так делаю. Сабкласс QNAM с кастомными слотами и всё. Оверхед не так уж и велик если главный класс не гуй.



  • Пришлось таки делать NAM для каждого из тредов (благо куки передаются).


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.