1. .h文件下声明
static UINT WINAPI MyInsertList(LPVOID lpParameter);//必须为此格式
2.创建线程函数m_param为结构体,如果需要传入多个参数需要定义结构体
BOOL CreateInsetListThread(const CString& FilePath ,const CString & DiskPath)
{
m_param.hWnd = this->m_hWnd;
m_param.FilePath = FilePath;
m_param.DiskPath = DiskPath;
m_pThread = AfxBeginThread(( AFX_THREADPROC )MyInsertList,&m_param,THREAD_PRIORITY_NORMAL, 0, CREATE_SUSPENDED);//创建线程
if(!m_pThread)//如果创建失败则返回
return FALSE;
m_pThread->m_bAutoDelete = FALSE;
m_pThread->ResumeThread();
}
3.线程函数的实现
UINT WINAPI MyInsertList(LPVOID lpParameter)
UINT WINAPI MyInsertList(LPVOID lpParameter)4.补充WaitForSingleObject(hThread,INFINITE);//等待指定线程关闭,INFINITE为一直等待
{
DiskThreadData * param = reinterpret_cast<DiskThreadData *>(lpParameter);//将lpParameter转换成结构体形式
HWND hDesWnd = param->hWnd;//获取句柄
//实现方式
}