我開始用一個簡單的例子 我需要在不同CPPS和頭我具有如Process_Images.h並行線程在CPP對於不同的成員函數的一類
以下類定義來劃分
void PrintHello(void* threadid);
在Process_Images.cpp
void ProcessImages::PrintHello(void* threadid)
{
long tid;
tid = (long)threadid;
std::cout << "Hello World! Thread ID, " << tid << std::endl;
pthread_exit(NULL);
}
在主函數
ProcessImages PI;
pthread_t threads[2];
pthread_create(&threads[0],NULL,PI.PrintHello,(void *)i);
誤差 - >
/home/nvidia/Desktop/cms/tools/vibrante-vcm30t124-linux/cmsapplication_export/cmsapplication/sampleThread.cpp:333:69: error: cannot convert ���ProcessImages::PrintHello��� from type ���void (ProcessImages::)(void*)��� to type ���void* (*)(void*)���
pthread_create(&threads[0],NULL,CarDetLEFT.PrintHello,(void *)i);
^
任何建議嗎?
什麼是'我'?嘗試使用'&i' –
不,使用C++ 11線程而不是pthreads!認真準備一個最小的例子,你可能會找到解決這個難題的人。 –