C++ AfxBeginThread】的更多相关文章

如果你的线程是从CWinThread继承出来的,结束自己就用AfxEndThread, 如果是外部调用的话,可以用PostThreadMessage(m_nThreadID, WM_QUIT,0,0);给这个线程发送消息,线程就会结束的, 其中的m_nThreadID是线程ID. 线程的ID可以这样得到 private: DWORD h_MemoryDraw;//定义变量 h_MemoryDraw = AfxBeginThread(MemoryDraw, Param)->m_nThreadID;…
简言之:AfxBeginThread是MFC的全局函数,是对CreateThread的封装.    CreateThread是Win32 API函数,前者最终要调到后者.具体说来,CreateThread这个 函数是windows提供给用户的 API函数,是SDK的标准形式,在使用的过程中要考虑到进程的同步与互斥的关系,进程间的同步互斥等一系列会导致操作系统死锁的因素,用起来比较繁琐一些,初学的人在用到的时候可能会产生不可预料的错误,建议多使用AfxBeginThread,是编译器对原来的Cre…
创建一个基于对话框的工程,工程名为CreateThreadRect   在CreateThreadRect.cpp中增加一个ThreadProc函数,代码如下   工作者线程的函数必须是全局函数或静态成员函数,不能是普通的成员函数   DWORD WINAPI ThreadProc(LPVOID pParam) { CDC* pdc; //将传入的参数转为RECT* RECT* rect=(RECT*)pParam; //得到设备句柄 pdc=AfxGetApp()->m_pMainWnd->…
计算从1+2+3...+100000=? 关键点 CWinThread* AfxBeginThread( AFX_THREADPROC pfnThreadProc, LPVOID pParam, int nPriority = THREAD_PRIORITY_NORMAL, UINT nStackSize = 0, DWORD dwCreateFlags = 0, LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL ); UINT MyFunction( L…
ref http://blog.csdn.net/kut00/article/details/4209680 启动线程: CWinThread* AfxBeginThread( 线程函数, this ); 线程的退出:在刚刚使用的时候,退出线程的方法有问题,导致退出的时候异常. 下面说线程退出的方法: 1. 线程函数返回:线程都在死循环中,当满足一定条件时, return ,也会将线程结束. 2.  AfxEndThread:这个函数只能用在线程函数中,当满足一定条件是,调用. 举一个例子: 可…
  简言之:  AfxBeginThread是MFC的全局函数,是对CreateThread的封装. CreateThread是Win32 API函数,前者最终要调到后者. 1>.具体说来,CreateThread这个 函数是windows提供给用户的 API函数,是SDK的标准形式,在使用的过 程中要考虑到进程的同步与互斥的关系,进程间的同步互斥等一系列会导致操作系统死锁的因素,用起来 比较繁琐一些,初学的人在用到的时候可能会产生不可预料的错误,建议多使用AfxBeginThread,是编译…
AfxBeginThread    用户界面线程和工作者线程都是由AfxBeginThread创建的.现在,考察该函数:MFC提供了两个重载版的AfxBeginThread,一个用于用户界面线程,另一个用于工作者线程,分别有如下的原型和过程: 用户界面线程的AfxBeginThread 用户界面线程的AfxBeginThread的原型如下:CWinThread* AFXAPI AfxBeginThread(CRuntimeClass* pThreadClass,int nPriority, UI…
工作线程通常用来执行一些后台任务,如:数据计算.后台杀毒等等.因为不需要创建窗口和处理用户消息,编写比较容易,在程序中只要调用AfxBeginThread 函数就可以创建并启动一个工作线程了. AfxBeginThread 的原型如下: CWinThread *AfxBeginThread(     AFX_THREADPROC pfnThreadProc,                           //指向控制函数的地址      LPVOID pParam,            …
用户界面线程在运行时会有一个窗口界面和与其相对应的窗口函数,所以它可以通过响应消息来和用户进行交互. AfxBeginThread 函数原型如下: CWinThread *AfxBeginThread(     CRuntimeClass *pThreadClass,         //从CWinThread派生的RUNTIME_CLASS类      int  nPriority /* = THREAD_PRIORITY_NORMAL */ ,      //指定线程的优先级      UI…
CreateThread._beginthreadex和AfxBeginThread 创建线程好几个函数可以使用,可是它们有什么区别,适用于什么情况呢?参考了一些资料,写得都挺好的,这里做一些摘抄和整合. [参考1]CreateThread, AfxBeginThread,_beginthread, _beginthreadex的区别 ===================================================================== 1.CreateThr…