Я пытаюсь использовать класс QT QNetworkAccessManager для управления некоторыми загрузками в многопоточном приложении C ++ / QT.
На рабочем в потоке (редактировать: поток является отдельным по другим причинам, кроме загрузки), я хотел бы получить доступ к внешнему серверу и быть готовым к получению результатов с код:
...
m_nam = new QNetworkAccessManager(this);
QNetworkReply *reply = m_nam->get(request);
connect(m_nam, SIGNAL(finished(QNetworkReply *)), this,
SIGNAL(finished(QNetworkReply *)));
...
Но я мог бы решить, до окончания загрузки, что меня не интересует результат.
Итак, я бы хотел настроить способ отключения соединения от другого потока с помощью сигнала do_abort ().
Что напрашивается само собой:
connect(this, SIGNAL(do_abort()), reply, SLOT(abort()));
Но я не думаю, что это сработает, потому что abort - это не слот QNetworkReply.
Так, как я могу установить механизм, где я могу остановить эту загрузку из другого потока? Я мог бы создать подкласс QNetworkReply и дать этому классу соответствующий слот. Но я бы тоже хотел понять ситуацию.