SetThreadAffinityMask中掩码的问题

2023-11-08

在我们进行多线程开发的过程时,常常需要自己分配线程到不同的处理器上运算,以保证我们程序的运行效率。SetThreadAffinityMask是我们常见的选择。
1.MSDN中函数的定义

DWORD_PTR WINAPI SetThreadAffinityMask(
  _In_ HANDLE    hThread,
  _In_ DWORD_PTR dwThreadAffinityMask
);

参数hThread就是我们在使用传进去线程的句柄,dwThreadAffinityMask就是我们要传入的处理器掩码
2.掩码常见问题
0x00000001,折就是一个最常见的处理器掩码,这个就是代表使用第一个处理器,如下图所示的i5双核心四线程的处理器CPU0(逻辑上的第一个)。0x00000008就是代表在CPU3(逻辑上的第四个)上运行
这里写图片描述
对于以前的电脑大多都是这样双核心四线程,我来解释下8核处理器及更多cpu核心的是如何分配到后四个处理器上的
这里写图片描述
如上图所示,一个32核cpu,当我们想使用
第6个cpu运行线程时,那么掩码就是0x00000020
第7个cpu运行线程时,那么掩码就是0x00000040
第8个cpu运行线程时,那么掩码就是0x00000080
第5个和第7个cpu运行线程时,那么掩码就是0x00000050
第7个和第8个cpu运行线程时,那么掩码就是0x000000C0
第2个和第7个和第8个cpu运行线程时,那么掩码就是0x000000C2
第2个和第4个和第7个和第8个cpu运行线程时,那么掩码就是0x000000CA
以此类推

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SetThreadAffinityMask中掩码的问题 的相关文章

随机推荐

  • 学习笔记:射频基础测试参数(S参数、OP1dB、IMD、NF)

    本篇非常表面的介绍了一些射频测试测量的基本参数 主要包括有S参数 OP1dB IMD NF等基础测试测量 只针对个人方便记录 目录 1 S参数 2 OP1dB 1dB压缩点 3 IMD 互调 IP3 3阶截获点 4 NF 噪声系数 1 S参
  • HBase集群搭建记录

    本文目录 写在前面 step1 下载并解压HBase step2 环境变量的配置 step3 配置文件修改 1 hbase env sh修改 2 hbase site xml 修改 3 regionservers 修改 4 backup m
  • 什么是3D NAND闪存,它到底优秀在哪?

    科技云报道原创 随着SSD的普及 SSD已经不再那么神秘 开始逐渐被人们所熟知 但是对于3D NAND闪存 很多人还不是很了解 今天我们就来聊聊3D NAND这个话题 3D NAND出现的原因 要聊3D NAND闪存价值 我们需要快速回顾一
  • 小森生活显示服务器,小森生活无可用网关服务器处理怎么回事 要怎么处理

    小森生活无可用网关服务器的问题越来越严重了 部分玩家都出现了网络连接不顺畅 登录不上游戏的情况 那么遇到小森生活无可用网关服务器怎么办呢 下面小编就为大家带来无可用网关服务器处理方法 赶快来看下吧 小森生活无可用网关服务器怎么办 一 检查小
  • 网上惊现刘翔等30位明星QQ号.

    继明星电话 家庭住址相继被曝光之后 日前有好事者又发帖曝光30明星的QQ号码 周杰伦 刘德华等港台明星 张含韵 周笔畅 李宇春等内地明星都榜上有名 昨日经过记者求证 曝光的很多QQ号码都是明星正在使用的 而明星经纪人也表示 QQ号码曝光危害
  • 通过java实现word转PDF

    介绍 用于java项目中解决word转pdf的需求 转换的效果跟调用的工具类 字体库 源文件 是wps还是microsoft保存的 格式版本等 系统环境等多个因素相关 没有百分百完成的方法 只有不断尝试 选择适合的方法 以下介绍三个能实现该
  • css 实现表单验证效果

    实例
  • leecode541反转字符串(带有调试代码)

    完整带有调试代码 package heima study day3 import java util Scanner public class 反转字符串541 public static void main String args Sca
  • Web 【基础】 10分钟快速搭建一个网站

    接触web开发也有大半年了 下面我来总结一下如何从零开始搭建一个网站 其实搭建一个网站 可以简单到10分钟 10块钱就能搭建 也可以难到成千上万人 耗费数百万一同搭建数个月 目录 一 选择服务器 各种服务器的区别 购买云服务器 二 安装宝塔
  • @RequestMapping使用须知

    RequestMapping 使用须知 使用 RequestMapping 注解映射请求路径 即 你可以使用 RequestMapping注解来将请求URL映射到整个类上 或某个特定的方法上 即 RequestMapping 既可以定义在类
  • 关于OPenGL贴图莫名其妙扭曲

    原图 效果 这个问题查出来了 OpenGL要求所有的纹理都是4字节对齐的 即纹理的大小永远是4字节的倍数 通常这并不会出现什么问题 因为大部分纹理的宽度都为4的倍数并 或每像素使用4个字节 但是这个图片是jpg并且宽高不是4的倍数 所以出现
  • js获取当前年月日,格式(YYYY年mm月dd日)

    1 显示当前系统年月日 2023 01 21 格式
  • Glide的封装

    package com example et Ustlis import android content Context import android graphics Bitmap import android graphics draw
  • Mac环境下小米手机Root教程

    参考文章 小米手机解锁注意事项 小米手机BL解锁操作指南 小米手机获取 Root 权限教程 详细图文 准备环境 需要Win环境 解锁需要Win环境 解锁工具是exe版本 刷机也需要Win环境 fastboot是exe文件 1 手机解锁 需要
  • Maven基础篇

    一 为什么要使用Maven 随着我们使用越来越多的框架 或者框架封装程度越来越高 项目中使用的 jar 包也越来越多 项目中 一个模块里面用到上百个jar包是非常正常的 框架中使用的 jar 包 不仅数量庞大 而且彼此之间存在错综复杂的依赖
  • Numpy一维array转置

    参考 https www cnblogs com cymwill p 8358866 html 分析 Numpy相关的转置函数有T transpose等 使一维数组转置可以使用reshape实现 实现例子 import numpy as n
  • 单元测试,模拟用户Get登陆,并携带登录后的token访问接口

    HttpClient httpClient HttpClient businessHttpClient private async Task
  • 慢sql和sql注入

    慢SQL是指在数据库中执行的SQL查询或操作的执行时间超过了预期或可接受的时间 这可能是由多种原因引起的 包括查询优化不当 索引缺失 不合理的数据模型设计 高并发负载等 下面是关于慢SQL的详细描述 排查和解决方法 现象 响应时间延迟 查询
  • VS2005自带SQL2005的管理工具

    有很多人对于VS2005自带SQL2005 Express版使用感觉很迷茫 因为它没有自带的管理工具 不过好在官网有SQL2005 Express版配套的管理工具可供下载 有了它 就可以管理SQL2005 Express版了 没有特殊要求的
  • SetThreadAffinityMask中掩码的问题

    在我们进行多线程开发的过程时 常常需要自己分配线程到不同的处理器上运算 以保证我们程序的运行效率 SetThreadAffinityMask是我们常见的选择 1 MSDN中函数的定义 DWORD PTR WINAPI SetThreadAf