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

cpp 复制代码
#include <afxwin.h>

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个线程,线程都执行同一个函数,每次传入的参数不一样;

运行如下;

相关推荐
搬砖魁首2 小时前
基础能力系列 - 多线程2 - 条件变量
c++·rust·条件变量·原子类型·线程同步互斥
chase_my_dream2 小时前
C++ + SLAM 高频面试问题整理
开发语言·c++·面试
牛油果子哥q2 小时前
【C++ STL string 】C++ STL string 终极精讲:底层原理、内存机制、全套API、深浅拷贝、易错坑点与工程实战规范
数据库·c++
凡人叶枫4 小时前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发
不想写代码的星星4 小时前
std::move 根本不移动,就像老婆饼里没有老婆
c++
redaijufeng4 小时前
C++雾中风景7:闭包
c++·算法·风景
小欣加油5 小时前
leetcode287寻找重复数
数据结构·c++·算法·leetcode
思麟呀5 小时前
C++11 核心特性(三):强类型枚举、static_assert 与 std::tuple
开发语言·c++
一拳一个呆瓜5 小时前
【STL】C++程序的启动与终止
c++·stl
凡人叶枫5 小时前
Effective C++ 条款07:为多态基类声明 virtual 析构函数
linux·c语言·开发语言·c++