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

运行如下;

相关推荐
Tyler_TXZ25 分钟前
C++C语言之——树
c语言·c++·算法·
旖旎夜光34 分钟前
LeetCode 30:串联所有单词的子串(滑动窗口) —— 题解
数据结构·c++·算法·leetcode·滑动窗口
星恒随风36 分钟前
C++ 红黑树封装(二):迭代器、const_iterator 与 operator[] 完整实现 mymap 和 myset
开发语言·c++·状态模式
小小龙学IT1 小时前
oneTBB 开源并行编程库深度解析:从工作窃取调度器到 flow graph 实战
c++·开源
ShineWinsu2 小时前
对于C++:缓冲区管理的详细解析
linux·c++·面试·编程·笔试·io·缓冲区
h_a_o777oah2 小时前
【算法基础】卡特兰数:递推定义与折线对称公式推导及解题策略
c++·算法·acm·组合数学·卡特兰数·反射原理·动态规划dp
帅气的小峰2 小时前
pybind11与nanobind可以共存吗?如何迁移?
c++·python·cuda·推理引擎
syker3 小时前
SuperNova Compiler v4.2.9 完整开发手册
c++
zhy295633 小时前
在 QAIRT Genie SDK 上部署 Llama 3.2 1B 模型:从环境准备到 C++ 推理
开发语言·c++·llama
richard_yuu3 小时前
JSON vs XML vs 二进制:3种序列化终极选型
xml·c++·qt·学习·json