Комментарии 2
Почему m_messages это std::queue, а не QQueue, если всё в рамках Qt ?
+1
Полагаю, это вопрос к первой части.
QQueue требует, чтобы тип был копируемый, а QPromise у нас некопируемый. Поэтому используется stl-очередь, поддерживающая move-only типы.
В коде явно видно, что сначала задача перемещается (std::move()) в очередь в методе print, а затем также перемещается обратно в методе run().
+2
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Размышление об Active Object в контексте Qt6. Часть 2