如何将线程/进程在一个/多个CPU核上运行

您所在的位置:网站首页 多核cpu运行软件 如何将线程/进程在一个/多个CPU核上运行

如何将线程/进程在一个/多个CPU核上运行

2024-06-29 08:51| 来源: 网络整理| 查看: 265

如何将线程/进程在一个/多个CPU核上运行 设置线程/进程与CPU的亲缘性,就是将线程/进程与CPU核进行绑定起来。

实现方法: 设置线程与指定cpu核绑定:SetThreadAffinityMask(GetCurrentThread(),mask); 设置进程与指定cpu核绑定:SetProcessAffinityMask(GetCurrentProcess(),mask); 参数说明:mask是CPU序号的或运算值:1(00000001)表示只运行在CPU第一个核上,2(00000010)表示只运行在CPU第二个核上,3(00000011)表示运行在CPU第一和第二个核上,4(00000100)表示只运行在CPU第三个核上,以此类推设置绑定对应的CPU核。

#include #include #include using namespace std; void t(); void t1(int cpu) { int a = 0, b = 0; SetThreadAffinityMask(GetCurrentThread(), cpu);//绑定线程与cpu核 int cpu_num = GetCurrentThreadNumber();//获取当前线程在对应的cpu核上运行 cout


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3