比如QVector中所有元素+1,可以用並行計算。
QtConcurrent::map():將一個函數應用於一個容器中的每一項,就地修改 items。
void add(int &num) { num +=1; } { QVector<int> vector; for(int i=0; i<3; i++) vector.append(i); qDebug() << "start: " << vector; QFuture<void> vFuture = QtConcurrent::map(vector, add); vFuture.waitForFinished(); qDebug() << "map result: " << vector; }
此處僅記錄,更多詳細內容參考Qt 並行運算高級API QtConcurrent - 一杯清酒邀明月 - 博客園 (cnblogs.com)