MFC一次性开多个线程的简单示例


#include 

CWinApp TheApp;

UINT myThreadFunc(LPVOID);

int main()
{
	for (int i = 0; i<10; i++)
	{
		if (AfxBeginThread(myThreadFunc, (LPVOID)i))
			printf("Thread launched %d\n", i);
	}

	// Wait for the threads to complete.
	Sleep(2000);

	return 0;
}

UINT myThreadFunc(LPVOID n)
{
	for (int i = 0; i<4; i++)
		printf("%d%d%d%d%d%d\n", n, n, n, n, n, n);
	return 0;
}

为了使用mfc,先包含afxwin.h;

afxwin.h是MFC C++类库的必需文件,其中包含如CWin,CStatic,CButton,CString,CEdit等类运行所必需的头文件;它还会调用windows.h,该头文件包含有数据类型的定义、API入口点定义和其它有用的参数信息;

Afx前缀是微软MFC一个小组的名称简写,并没有别的意义;

循环调用AfxBeginThread创建10个线程,线程都执行同一个函数,每次传入的参数不一样;

运行如下;

MFC一次性开多个线程的简单示例_第1张图片

你可能感兴趣的:(VC++,mfc,c++,线程)