QtConcurrent::run() で非静的メンバー関数を使用していくつかの作業を正常に並列化しました。現在、静的メンバー関数を使用して並列化された作業を実装しようとしています。私は Random クラスを持っており、1 つの正確なインスタンスで rand(double,double) 静的関数を呼び出したいと考えています。これは乱数ジェネレーターであり、新しくシードされたジェネレーターで runif を呼び出すスレッドを実行したいと考えています。ここでこれを試しました (クラス solveParallel は、QtConcurent::run と Qfuture::result() をそれぞれ呼び出す runRandom() と resultRandom() 関数を持つ単純なクラスです):
void solverParallelData::runRandom(const double& d1, const double& d2)
{
futureRandom = QtConcurrent::run(Random::rand,this->m_generator, d1, d2);
}
コンパイルエラーは「関数の引数があいまいであるため、テンプレートの引数を推測できません」です::手がかりはありますか?
ありがとうございます。