如果我们新建的工程为Test。
一、我们首先应该在TestDlg类中添加两个成员函数:
(1)先在TestDlg.h中声明函数如下
private:
static UINT __cdecl _thread( LPVOID pParam );//该线程的调用函数
void threadFunction();//在这个函数中编写该线程需要完成的任务
(2)然后在TestDlg.cpp中实现这两个函数
UINT __cdecl CTESTDlg::_thread( LPVOID pParam )
{
CTESTDlg *dlg = (CTESTDlg *)pParam;
dlg->threadFunction();
return 0;
}
void CTESTDlg::threadFunction()
{
//该线程需要完成的任务。
//如果有循环,应该在循环中加sleep(30) 不然会死机的。
}
二、线程的调用
在你需要调用该线程的地方输入如下命令即可
AfxBeginThread(_thread, (void *)this);
三、结束线程
如果要在线程内结束线程,可以在线程内调用 AfxEndThread.
如果你想让别一个线程B来结束线程A,那么,你就需要在这两个线程中传递信息.
一、我们首先应该在TestDlg类中添加两个成员函数:
(1)先在TestDlg.h中声明函数如下
private:
static UINT __cdecl _thread( LPVOID pParam );//该线程的调用函数
void threadFunction();//在这个函数中编写该线程需要完成的任务
(2)然后在TestDlg.cpp中实现这两个函数
UINT __cdecl CTESTDlg::_thread( LPVOID pParam )
{
CTESTDlg *dlg = (CTESTDlg *)pParam;
dlg->threadFunction();
return 0;
}
void CTESTDlg::threadFunction()
{
//该线程需要完成的任务。
//如果有循环,应该在循环中加sleep(30) 不然会死机的。
}
二、线程的调用
在你需要调用该线程的地方输入如下命令即可
AfxBeginThread(_thread, (void *)this);
三、结束线程
如果要在线程内结束线程,可以在线程内调用 AfxEndThread.
如果你想让别一个线程B来结束线程A,那么,你就需要在这两个线程中传递信息.