QTaskBuilder Class
template <typename Task, typename... Args> class QtConcurrent::QTaskBuilderDie Klasse QTaskBuilder wird für die Anpassung von Aufgabenparametern verwendet. Mehr...
Kopfzeile: | #include <QTaskBuilder> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Concurrent) target_link_libraries(mytarget PRIVATE Qt6::Concurrent) |
qmake: | QT += concurrent |
Seit: | Qt 6.0 |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QTaskBuilder ist Teil der Threading-Klassen.
Öffentliche Funktionen
QtConcurrent::QTaskBuilder<Task, Args...> & | onThreadPool(QThreadPool &newThreadPool) |
QFuture<QtConcurrent::InvokeResultType> | spawn() |
void | spawn(QtConcurrent::FutureResult) |
QtConcurrent::QTaskBuilder<Task, ExtraArgs...> | withArguments(ExtraArgs &&... args) |
QtConcurrent::QTaskBuilder<Task, Args...> & | withPriority(int newPriority) |
Verwandte Nicht-Mitglieder
Detaillierte Beschreibung
Es ist nicht möglich, ein Objekt dieser Klasse manuell zu erstellen. Siehe Concurrent Task für weitere Details und Anwendungsbeispiele.
Dokumentation der Mitgliedsfunktionen
QtConcurrent::QTaskBuilder<Task, Args...> &QTaskBuilder::onThreadPool(QThreadPool &newThreadPool)
Legt den Thread-Pool newThreadPool fest, in dem die Aufgabe aufgerufen wird.
QFuture<QtConcurrent::InvokeResultType> QTaskBuilder::spawn()
Führt die Aufgabe in einem separaten Thread aus und gibt sofort ein Future-Objekt zurück. Dies ist ein nicht-blockierender Aufruf. Die Aufgabe wird möglicherweise nicht sofort gestartet.
void QTaskBuilder::spawn(QtConcurrent::FutureResult)
Führt die Aufgabe in einem separaten Thread aus. Dies ist ein nicht-blockierender Aufruf. Die Aufgabe wird möglicherweise nicht sofort gestartet.
template <typename... ExtraArgs> QtConcurrent::QTaskBuilder<Task, ExtraArgs...> QTaskBuilder::withArguments(ExtraArgs &&... args)
Legt die Argumente args fest, mit denen die Aufgabe aufgerufen werden soll. Der Code ist fehlerhaft (verursacht Kompilierungsfehler), wenn:
- Diese Funktion mehr als einmal aufgerufen wird.
- Die Anzahl der Argumente ist Null.
QtConcurrent::QTaskBuilder<Task, Args...> &QTaskBuilder::withPriority(int newPriority)
Legt die Priorität newPriority fest, mit der die Aufgabe aufgerufen wird.
Verwandte Nicht-Mitglieder
[alias]
InvokeResultType
Die vereinfachte Definition dieses Typs sieht wie folgt aus:
template <class Task, class ...Args> using InvokeResultType = std::invoke_result_t<std::decay_t<Task>, std::decay_t<Args>...>;
Die tatsächliche Implementierung enthält auch eine Kompilierzeitprüfung, ob die Aufgabe mit den angegebenen Argumenten aufgerufen werden kann oder nicht.
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.