MFC 怎么获得主线程的 CWinThread 指针

因为我要在用户者线程向主线程发送消息(PostThreadMessage)

当模块的主线程
class CWinApp : public CWinThread
因此在MFC下获取全局变量theApp就是当前实例的主线程.
AfxGetApp()返回的是应用程序对象的指针,如果该应用程序(或进程)只有一个界面线程在运行,那么这两者返回的都是一个全局的应用程序对象指针,这个全局的应用程序对象就是MFC应用框架所默认的theApp对象。也就是说当每次使用AppWizard生成一个SDI或MDI应用程序时,AppWizard都会添加CYourApp theApp这条语句,AfxGetApp()返回的就是这个theApp的地址。
当前界面的线程
AfxGetThread()返回当前界面线程对象的指针.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-02-23
ANDLE hThread=CreateThread(NULL,0,Thread,0,NULL,&dwThreadID);//创建线程
使用EVENT 线程调API函数WaitForSingleObject来等待该事件时就挂起了.当你需要该线程处理什么时,使用SetEvent来激活该事件,则线程被释放,这样就激活了.而被挂起后的线程不会被运行,所以不能自己激活,只能通过其它线程来激活
相似回答