QFuture<int> future = QtConcurrent::run(someFunction, 42);
QFutureWatcher<int> watcher;
watcher.setFuture(future);// 连接信号槽以处理任务完成后的操作
QObject::connect(&watcher, &QFutureWatcher<int>::finished, [&]() {int result = watcher.result();qDebug() << "Result:" << result;
});
QFuture
用于表示异步操作的结果,可以通过QFutureWatcher
来监控和获取结果。QConcurrent
提供了一些函数和工具来简化并发编程,比如QtConcurrent::run
和QtConcurrent::map
。