QtConcurrent::blockingMapped 调用函数具有超过 1 个参数

标签 qt qt5 qtconcurrent

我使用QtConcurrent::blockingMapped()在多个线程上的单个参数列表上执行该函数。真的太棒了!

但我想做同样的事情,调用需要多个参数的函数,即:

// prototype:

static void openAndProcess(QString FileName, QImage &image);

这是我的数据:

QList<QString> fileList;
QList<QImage> qImageList;

我想使用上面的 QList 在我的 openAndProcess() 函数上执行 QtConcurrent::blockingMapped()...

我该怎么做?

提前致谢!

最佳答案

创建一个带有指向数据的指针的 POD 结构。这是无需在 QtConcurrent 中重新实现许多无趣的事情即可做到这一点的唯一方法。

或者,考虑使用 QList<QPair<QString, QImage> > ,这实际上是同一件事。

关于QtConcurrent::blockingMapped 调用函数具有超过 1 个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29430518/

相关文章:

qt - Qmake项目依赖(链接库)

css - 每个 QTableWidgetItem 的 QTableWidget 样式

xml - 如何在 Qt 中读取 XML 节点的属性?

c++ - 如何创建带有自定义标题的 qtablewidget

c++ - 每轴网格属性(颜色),它是如何工作的?

c++ - QFutureWatcher 信号不工作

c++ - Qt并发映射错误c2440

c++ - 是否可以在父子目录项目中修改 QT qmake 变量?

c++ - 如何访问 QHeaderView::sectionsInserted 插槽

c++ - QStateMachine如何在不同的QState中显示和隐藏QGraphicsView和QObject