°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·ҳ£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¼äµÄÓÅÁÓÒòËØÎÒÒ²ÒѾÔڸýÚÌÖÂÛ¹ý¡£¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö´ÐÐÏ̺߳¯ÊýµÄÀàÐÍAFX_THREADPROC¡¡¡¡¶¨ÒåÓÚAFXWIN¡£H¡¡Ö®ÖУº¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡in¡¡AFXWIN¡£H¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡typedef¡¡UINT¡¡£¨AFX_CDECL¡¡*AFX_THREADPROC£©£¨LPVOID£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ËùÒÔÄãÓ¦¸Ã°Ñ±¾ÉíµÄÖ´ÐÐÏ̺߳¯ÊýÉùÃ÷ÈçÏ£¨ÆäÖеÄpParam¡¡¡¡ÊǸöÖ¸Õ룬ÔÚʵÓÃÉÏ¿ÉÒÔÖ¸¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ïò³ÌÐòÔ±×Ô¶¨µÄÊý¾Ý½á¹¹£©£º¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡UINT¡¡ThreadFunc¡¡£¨LPVOID¡¡pParam£©£»¡¡
760¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡823¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡14¡¡¡¡¡¡¡¡¡¡¡¡MFC¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚ¡¡Õ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¶à¾w³ÌʽÔOÓ‹¡¡
¡¡¡¡¡¡¡¡¡¡·ñÔò£¬±àÒëʱ»á»ñµÃÕâÑùµÄ´íÎóÏûÏ¢£º¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡error¡¡C2665£º¡¡'AfxBeginThread'¡¡£º¡¡none¡¡of¡¡the¡¡2¡¡overloads¡¡can¡¡convert¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡parameter¡¡1¡¡from¡¡type¡¡'void¡¡£¨unsigned¡¡long¡¡*£©'¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ÓÐʱºòÎÒÃÇ»áÈò»Í¬µÄÖ´ÐÐÏß³ÌʹÓÃÏàͬµÄÖ´ÐÐÏ̺߳¯Êý£¬ÕâʱºòÄã¾ÍµÃÌرð×¢Òâµ½Ö´ÐÐÏ̡߳¡
¡¡¡¡¡¡¡¡¡¡¡¡º¯ÊýʹÓÃÈ«Óò±äÁ¿»ò¾²Ì¬±äÁ¿Ê±£¬Êý¾Ý¹²ÏíËùÒý·¢µÄÑÏÖØÐÔ£¨ÓкÃÓлµ£©¡£ÖÁÓÚ·ÅÖÃÔÚ¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¶ÑÕ»ÖеıäÁ¿»ò¶ÔÏ󣬶¼²»»áÓÐÎÊÌ⣬ÒòΪÿһ¸öÖ´ÐÐÏß³Ì×ÔÓÐÒ»¸ö¶ÑÕ»¡£¡¡
²úÉúÒ»¸öUI¡¡Thread¡¡
¡¡¡¡¡¡¡¡¡¡¡¡UI¡¡thread¡¡¿É²»Äܹ»¹âÓÉÒ»¸öÖ´ÐÐÏ̺߳¯ÊýÀ´´ú±í£¬ÒòΪËüÒª´¦ÀíÏûÏ¢£¬ËüÐèÒªÒ»¸öÏûÏ¢»Ø¡¡
¡¡¡¡¡¡¡¡¡¡¡¡Â·¡£ºÃµÃºÜ£¬CWinThread£º£ºRun¡¡ÀïÍ·¾ÍÓÐÒ»¸öÏûϢѻ·¡£ËùÒÔ£¬ÎÒÃÇÓ¦¸ÃÏÈ´ÓCWinThread¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ÑÜÉúÒ»¸ö×Ô¼ºµÄÀà±ð£¬ÔÙµ÷ÓÃAfxBeginThread¡¡¡¡²úÉúÒ»¸öCWinThread¡¡¶ÔÏ󣺡¡
¡¡¡¡¡¡¡¡¡¡¡¡class¡¡CMyThread¡¡£º¡¡public¡¡CWinThread¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DECLARE_DYNCREATE£¨CMyThread£©¡¡
¡¡¡¡¡¡¡¡¡¡¡¡public£º¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡void¡¡BOOL¡¡InitInstance£¨£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£ý£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡IMPLEMENT_DYNCREATE£¨CMyThread£»¡¡CWinThread£©¡¡
¡¡¡¡¡¡¡¡¡¡¡¡BOOL¡¡CMyThread£º£ºInitInstance£¨£©¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡£¡£¡£¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡
¡¡¡¡¡¡¡¡¡¡¡¡CWinThread¡¡*pThread¡¡=¡¡AfxBeginThread£¨RUNTIME_CLASS£¨CMyThread£©£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ÎÒÏëÄã¶ÔRUNTIME_CLASS¡¡ºêÒѾ²»Ä°ÉúÁË£¬µÚ£³Õº͵ڣ¸Õ¶¼ÓÐÕâ¸öºêµÄÔ´´úÂë¡¡
¡¡¡¡¡¡¡¡¡¡¡¡Õ¹ÏÖÒÔ¼°ÒâÒå½âÊÍ¡£AfxBeginThread¡¡¡¡ÊÇÉÏһС½ÚͬÃûº¯ÊýµÄÒ»¸öoverloaded¡¡º¯Êý£¬Ò»¹²¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¿ÉÒÔ½ÓÊÜÎå¸ö²ÎÊý£¬·Ö±ðÊÇ£º¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡761¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡824¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚƪ¡¡¡¡¡¡¡¡ÉîÈë¡¡¡¡MFC¡¡¡¡³ÌʽÔOÓ‹¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CWinThread*¡¡AFXAPI¡¡AfxBeginThread£¨CRuntimeClass*¡¡pThreadClass£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡int¡¡nPriority¡¡=¡¡THREAD_PRIORITY_NORMAL£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡UINT¡¡nStackSize¡¡=¡¡0£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DWORD¡¡dwCreateFlags¡¡=¡¡0£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡LPSECURITY_ATTRIBUTES¡¡lpSecurityAttrs¡¡=¡¡NULL£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡×îºóËĸö²ÎÊýµÄÒâÒåºÍĬÈÏÖµ±ÈÉÏÒ»½ÚͬÃûº¯ÊýÏàͬ£¬µ«ÊÇÉÙ½ÓÊÜÒ»¸öLPVOID¡¡pParam¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡²ÎÊý¡£¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Äã¿ÉÒÔÔÚAFXWIN¡£H¡¡¡¡ÖÐÕÒµ½CWinThread¡¡µÄ¶¨Ò壺¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡class¡¡CWinThread¡¡£º¡¡public¡¡CCmdTarget¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DECLARE_DYNAMIC£¨CWinThread£©¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡BOOL¡¡CreateThread£¨DWORD¡¡dwCreateFlags¡¡=¡¡0£»¡¡UINT¡¡nStackSize¡¡=¡¡0£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡LPSECURITY_ATTRIBUTES¡¡lpSecurityAttrs¡¡=¡¡NULL£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¡£¡£¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡int¡¡GetThreadPriority£¨£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡BOOL¡¡SetThreadPriority£¨int¡¡nPriority£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DWORD¡¡SuspendThread£¨£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DWORD¡¡ResumeThread£¨£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡BOOL¡¡PostThreadMessage£¨UINT¡¡message£»¡¡WPARAM¡¡wParam£»¡¡LPARAM¡¡lParam£©£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¡£¡£¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÆäÖÐÓÐÐí¶à³ÉÔ±º¯ÊýºÍͼ14¡4¡¡ÖеÄWin32¡¡API¡¡¡¡º¯ÊýÓйء£ÔÚCWinThread¡¡µÄ³ÉÔ±º¯Êý¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÖУ¬ÓÐÎå¸öº¯ÊýÖ»ÊǷdz£µ¥´¿µÄWin32¡¡API¡¡¡¡µÄ°ü×°¶øÒÑ£¬ËüÃDZ»¶¨ÒåÓÚAFXWIN2¡£INL¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÎļþÖУº¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡in¡¡AFXWIN2¡£INL¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡CWinThread¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_AFXWIN_INLINE¡¡BOOL¡¡CWinThread£º£ºSetThreadPriority¡¡£¨int¡¡nPriority£©¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡ASSERT£¨m_hThread¡¡£¡=¡¡NULL£©£»¡¡return¡¡¡¡£º£ºSetThreadPriority£¨m_hThread£»¡¡nPriority£©£»¡¡£ý¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_AFXWIN_INLINE¡¡int¡¡CWinThread£º£ºGetThreadPriority¡¡£¨£©¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡ASSERT£¨m_hThread¡¡£¡=¡¡NULL£©£»¡¡return¡¡£º£ºGetThreadPriority¡¡£¨m_hThread£©£»¡¡£ý¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CWinThread¡¡¡¡ResumeThread¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_AFXWIN_INLINE¡¡DWORD¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£º£º¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¨£©¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡ASSERT£¨m_hThread¡¡£¡=¡¡NULL£©£»¡¡return¡¡£º£ºResumeThread¡¡£¨m_hThread£©£»¡¡£ý¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_AFXWIN_INLINE¡¡DWORD¡¡CWinThread£º£ºSuspendThread¡¡£¨£©¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡ASSERT£¨m_hThread¡¡£¡=¡¡NULL£©£»¡¡return¡¡£º£ºSuspendThread¡¡£¨m_hThread£©£»¡¡£ý¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡_AFXWIN_INLINE¡¡BOOL¡¡CWinThread£º£ºPostThreadMessage¡¡£¨UINT¡¡message£»¡¡WPARAM¡¡wParam£»¡¡LPARAM¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡lParam£©¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡ASSERT£¨m_hThread¡¡£¡=¡¡NULL£©£»¡¡return¡¡£º£ºPostThreadMessage¡¡£¨m_nThreadID£»¡¡message£»¡¡wParam£»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡lParam£©£»¡¡£ý¡¡
762¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡825¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡14¡¡¡¡¡¡¡¡¡¡MFC¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚ¡¡Õ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¶à¾w³ÌʽÔOÓ‹¡¡
Ö´ÐÐÏ̵߳ĽáÊø¡¡
¡¡¡¡¡¡¡¡¡¡¼ÈÈ»worker¡¡thread¡¡¡¡µÄÉúÃü¾ÍÊÇÖ´ÐÐÏ̺߳¯Êý±¾Éí£¬º¯ÊýÒ»µ©return¡¡£¬Ö´ÐÐÏß³ÌÒ²¾Í½áÊøÁË£¬¡¡
¡¡¡¡¡¡¡¡¡¡×ÔÈ»µÃºÜ¡£»òÕßÖ´ÐÐÏ̺߳¯ÊýÒ²¿ÉÒÔµ÷ÓÃAfxEndThread¡¡£¬½áÊøÒ»¸öÖ´ÐÐÏ̡߳£¡¡
¡¡¡¡¡¡¡¡¡¡UI¡¡Ö´ÐÐÏß³ÌÒòΪÓÐÏûϢѻ·µÄ¹Øϵ£¬±ØÐëÔÚÏûÏ¢¶ÓÁÐÖзÅÒ»¸öWM_QUIT£¬²ÅÄܽáÊøÖ´ÐС¡
¡¡¡¡¡¡¡¡¡¡Ï̡߳£·ÅÖõķ½Ê½ºÍÒ»°ãWin32¡¡³ÌÐòÒ»Ñù£¬µ÷Ó㺣ºPostQuitMessage¡¡¡¡¼´¿É°ìµ½¡£Òà»òÕߣ¬¡¡
¡¡¡¡¡¡¡¡¡¡ÔÚÖ´ÐÐÏ̵߳ÄÈκÎÒ»¸öº¯ÊýÖе÷ÓÃAfxEndThread¡¡£¬Ò²¿ÉÒÔ½áÊøÖ´ÐÐÏ̡߳£¡¡
¡¡¡¡¡¡¡¡AfxEndThread¡¡¡¡ÆäʵҲÊǸöÍâ°ü×°£¬ÆäÄÚ²¿µ÷ÓÃ_endthreadex£¬Õâ¸ö¶¯×÷²ÅÕæÕý°ÑÖ´ÐÐÏ̡߳¡
¡¡¡¡¡¡¡¡¡¡½áÊøµô¡£¡¡
¡¡¡¡¡¡¡¡¡¡±ðÍüÁË£¬²»ÂÛworker¡¡thread¡¡»òUI¡¡thread£¬¶¼ÐèÒªÒ»¸öCWinThread¡¡¶ÔÏ󣬵±Ö´ÐÐÏ߳̽ᡡ
¡¡¡¡¡¡¡¡¡¡Êø£¬¼ÇµÃ°Ñ¸Ã¶ÔÏóÊͷŵô£¨ÀûÓÃdelete¡¡£©¡£¡¡
Ö´ÐÐÏß³ÌÓëͬ²½¿ØÖÆ¡¡
¡¡¡¡¡¡¡¡¡¡¿´ÆðÀ´Ö´ÐÐÏ̵߳ĵ®ÉúÓë½áÊø£¬ÒÔ¼°¶ÔËüµÄÓÅÏÈȨÉ趨¡¢¶³½á¡¢ÖØм¤»î£¬¶¼ºÜÈÝÒס£µ«¡¡
¡¡¡¡¡¡¡¡¡¡ÊÇÎÒ±ØÐ뾯¸æÄ㣬¶àÏ̳߳ÌÐòµÄÉè¼Æ³É¹¦¹Ø¼ü²¢²»ÔÚ´Ë¡£Èç¹ûÄãµÄÿÒ