MFC线程

来源:互联网 发布:淘宝联盟推广方法 编辑:程序博客网 时间:2024/05/16 04:23

//定义全局同步互斥锁
HANDLE hMutex;

 

//定义传入线程执行函数参数结构体

struct ThreadInfo
{
 stack<IplImage*> imageStack;
 stack<IplImage*> threadImgStack;
 vector<classifier*>* pcVec;  //point to  classifierVec
 IplImage* com_image;
};

 

 

 

 

//定义

CWinThread* work_thread;//检测线程
ThreadInfo  thread_info;//线程参数

 

 

//声明

UINT DoWork(LPVOID pParam);


//在初始化阶段开启检测线程
 thread_info.pcVec =&classifierVec;//传入线程执行函数的参数
 LPVOID pParam=(LPVOID)(&thread_info);
 work_thread= AfxBeginThread(DoWork,pParam);//开启线程,线程函数DoWork开始执行
 hMutex=CreateMutex(NULL,FALSE,NULL);//初始化线程互斥锁

 

 

 


WaitForSingleObject(hMutex,INFINITE);//加锁
 CPublic::com_image=Bmp2IplImage(Width,Height,m_pImageBuffer);
 ReleaseMutex(hMutex);//解锁


  



UINT DoWork(LPVOID pParam)//UINT必须的,没有参数可为NULL

{

       while(true)

           {}

}

原创粉丝点击