多线程专题之MFC创建线程(1)
来源:互联网 发布:c语言 if 编辑:程序博客网 时间:2024/06/06 00:39
现在,我们来谈谈用MFC如何创建多线程了吧!
MFC中有两类线程 :
工作者线程 和 用户界面线程
他们主要的区别是:
工作者线程没有消息循环,通常用来执行后台计算和维护任务
户界面线程有自己的消息队列 和 消息循环,是用于响应用户及系统所产生的事件和消息,即有交互功能
当然了,对于Win32的API编程而言,他们是没有区别的。
今天,我们就创建一个简单的MFC式工作者线程:
void CMultiThreadDlg::OnBtnUsageThree()
{
// TODO: Add your control notification handler code here
//简单的工作者线程
CWinThread *pThread = NULL;
CString strArg = _T("");
pThread = AfxBeginThread(
AfxThreadProc, //线程启动函数
&strArg, //线程启动函数
THREAD_PRIORITY_NORMAL, //线程优先级
0, //Windows系统一般线程栈大小为1 MB,创建线程的数目与物理内存和栈空间大小有关
0, //线程创建标志,如:CREATE_SUSPENDED
NULL); //系统安全描述,NULL
if ( pThread )
{
//pThread->m_bAutoDelete = TRUE; //当线程结束是自动清除线程对象,默认是TRUE
WaitForSingleObject( pThread->m_hThread,INFINITE ); //等待线程结束
AfxMessageBox(strArg);
}
}
线程函数:
UINT __cdecl AfxThreadProc( LPVOID pParam )
{
CString * pStr = (CString*)pParam;
*pStr = _T("Hello World!");
//AfxEndThread(0/*线程退出码*/,TRUE/*是否删除现成所占用的内存*/ ); //提前退出线程函数
return 0;
}
今天,就到这了.明天继续啊.提示以下,明天讲MFC有消息循环的有界面和无界面线程.记得关注哦!呵呵.
- 多线程专题之MFC创建线程(1)
- 多线程专题之MFC创建线程(2)
- 多线程专题之MFC创建线程
- 多线程专题之线程同步(1)
- 多线程专题之线程参数
- MFC 多线程 用户界面线程创建
- 多线程之线程创建
- MFC多线程之工作者线程
- MFC多线程之用户界面线程
- 多线程专题之最简单的线程
- 多线程专题之线程间的通信
- 多线程专题之线程同步(2)
- 多线程之pthread_create创建线程
- Java多线程之创建线程
- 多线程系列之创建线程
- MFC 线程创建、多线程、及多线程间的同步问题
- MFC多线程的创建,包括工作线程和用户界面线程
- MFC多线程的创建,包括工作线程和用户界面线程
- 易语言写的一个大话西游外挂
- 老板授予大权是否可以说OK
- 多线程专题之线程参数
- JavaScript关于window.open()应用
- there is a ora 00600 error in DO20L
- 多线程专题之MFC创建线程(1)
- div+css 布局浏览器兼容
- 如何解决Tomcat6中文乱码
- 今天收到了万网的答复信
- RHEL下安装配置基于2台服务器的MYSQL集群
- linux Debugger原理 工作流
- google另一个合作网站的来信
- 博客收藏
- oracle下载地址