Android入门 之 VC++ 线程的创建与运行范例
2010-03-24 16:13:00 来源:WEB开发网利用线程方法实现:一个静态文本框循环显示整数1~4096一次。
1、 首先创建一个基本对话框的MFC工程,工程名为“ThreadTest”。
2、 在头文件“ThreadTestDlg.h”中的CThreadTestDlg类里添加一个成员变量(红色字体):
class CThreadTestDlg : public CDialog
{
// Construction
public:
CThreadTestDlg(CWnd* pParent = NULL); // standard constructor
HANDLE m_hThread; //创建线程中需要用到的句柄
// Dialog Data
//{{AFX_DATA(CThreadTestDlg)
…略
}
3、在主程序文件“ThreadTestDlg.cpp”里定义一个全局的线程函数,在线程创建时运行,我们所要完成的文本框显示工作就是在这个线程函数里完成的。
DWORD WINAPI TextThread(LPVOID lpParameter)
{
CThreadTestDlg* dlg=(CThreadTestDlg*)lpParameter;
//固定框架结构,线程需要完成的任务添加到下面即可
int i;
CString str;
for(i=0;i<4096;i++)
{
str.Format("%d",i);
dlg->SetDlgItemText(IDC_STATIC1,str);
}
//固定框架结构,线程需要完成的任务添加到上面即可
ExitThread(0); //结束线程
return true;
}
4、创建一个按钮,完成创建线程,并运行线程函数。
void CThreadTestDlg::OnButton1()
{
// TODO: Add your control notification handler code here
DWORD threadID;
m_hThread=CreateThread(NULL,0,TextThread,this,0,&threadID); //红色部分为头文件中添加的句柄变量, 蓝色部分填写步骤3中所定义的线程函数名即可
}
5、关闭线程可用ExitThread函数,注意这个函数只能在线程中使用并只能终止其本身,如步骤3中蓝色部分代码。
6、编译,运行,点击按钮1,即可看到静态文本框里循环显示整数0~4096一次。
更多精彩
赞助商链接