LINUX.ORG.RU

«Ассинхронность» QNetworkAccessManager

 ,


0

1

Создаю в потоке QThread несколько объектов QNetworkAccessManager и замечаю, что ОС создает отдельный поток для каждого объекта который создал сетевое соединение. Собираю на Qt-5.14.2, gcc 5.3.1 64x.

Я что-то делаю не так или это такая ассинхронность под капотом Qt?


Ответ на: комментарий от annulen

Нет, там один фоновый поток, который параллельно обслуживает несколько соединений

Что не излечивает GUI от лагов если все шлепать прямо в ui.

bhfq ★★★★★ ()
Ответ на: комментарий от panter_dsd

https://github.com/qt/qtbase/blob/dev/src/network/ssl/qsslsocket.cpp

As a convenience, QSslSocket supports QTcpSocket's blocking functions waitForConnected(), waitForReadyRead(), waitForBytesWritten(), and waitForDisconnected(). It also provides waitForEncrypted(), which will block the calling thread until an encrypted connection has been established.

Кроме этого нет упоминаний о потоках. Можно делать вывод что может делать ассинхронность без создания потоков.

ocr ()