QT で C++ (librairie OpenCV) を使用して正常に動作する GUI を開発しています。今、ブーストを使用してコードをマルチスレッド化しようとしています私の方法は次のとおりです:
//creating thread group
thread_group mythread;
//then creating threads
mythread.create_thread(bind(&MainWindow::setbarvalue,this,0) ) ;
//set max and min of a progressbar to zero to get a floatting progressbar
mythread.create_thread(bind(&AVI2Image::Convert_AVItoImage,&avitoim,Nom,firstframe, lastframe,Nom_save,digitsnumber)) ;
AVI2Image :クラス
Convert_AVItoImage: 関数
avitoim: クラスのインスタンス
次に属性
このライン作業のいずれか。
問題は次の行から始まります。
mythread.create_thread(bind(&Lecture_containerYUV::container_YUV2yuv,&lectcont, Nom,Nom_save, width ,height,Redimonsionne,width_desir,height_desir, filter,inputsampling,
inputbitdepth,nbimages,digitsnumber,ry6,ru6,rv6,gy6,gu6,gv6,by6,bu6,bv6,coeff1,coeff2,coeff3,contrast,gamma,ry7,ru7,rv7,gy7,gu7,gv7,by7,bu7
,bv7,ry2,ru2,rv2,gy2,gu2,gv2,by2,bu2,bv2));
上記と同じ方法ですが、ここで次のエラーが発生します。
C:\Users\Mido\Documents\Container_ConverterV_2.4\mainwindow.cpp:363: erreur : no matching function for call to 'bind(void (Lecture_containerYUV::*)(std::string, std::string, int, int, bool, int, int, int, int, int, int, int, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double), Lecture_containerYUV*, std::string&, std::string&, int&, int&, bool&, int&, int&, int&, int&, int&, int&, int&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&, double&)'
と:
lectcont.container_YUV2yuv( Nom,Nom_save, width ,height,Redimonsionne,width_desir,height_desir, filter,inputsampling,
inputbitdepth,nbimages,digitsnumber,ry6,ru6,rv6,gy6,gu6,gv6,by6,bu6,bv6,coeff1,coeff2,coeff3,contrast,gamma,ry7,ru7,rv7,gy7,gu7,gv7,by7,bu7
,bv7,ry2,ru2,rv2,gy2,gu2,gv2,by2,bu2,bv2);
正常に動作します!!!
mingwは関数を見つけることができません。理由がわかりません。
助けてください