找出哪个模块设置处理器亲和力掩码
Finding out which module set processor affinity mask
我遇到了一个问题,即从Windows命令提示或其他方式启动时,我的32位命令行应用程序设置为仅在64上使用第一个32 CPU内核 - 核心系统。在任务管理器中查看该过程的CPU亲和力掩码,我可以看到只检查了前32个CPU,并且未选中最后32个CPU。
我确保我的代码不调用SetProcessaffinityMask,但是我如何查看第三方模块是否调用此功能?会做诸如调用setThreadPriority之类的事情会更改CPU亲和力掩码?
根据MSDN,32位应用程序仅访问32个处理器。即使您自己不称呼亲和力API,也可能在初始化时在幕后使用。
相关文章:
- #定义c-预处理器常量..我做错了什么
- 预处理器:插入结构名称中的前一个行号
- 如何在c++中实现处理器调度模拟器
- C/C++预处理器是否可以检测一些编译器选项
- 要与"if constexpr"一起使用的编译时消息(在预处理器之后)
- 在clang++预处理器中确定gcc工具链版本
- 不同/较旧的处理器运行c++代码的方式是否不同
- 用于交叉编译和CMake的预处理器宏的单元测试
- 有没有办法在从编译器获取参数时避免预处理器宏?
- 如何比较两个同名的预处理器宏?
- 从预处理器获取 Windows 版本(C++ Win32)
- 如何摆脱为条件编译定义预处理器宏的需要?
- C 预处理器 - 现有定义的预置路径
- VS2015 预处理器定义与点
- 不带预处理器的调用方法/文件的文件名/行号
- 获取文件数据预处理器宏
- 有没有办法在 c++ 中拥有条件预处理器
- 如何在另一个核心上启动线程而不将处理器亲和力设置为特定核心
- 有没有办法使用提升线程库设置与处理器内核的线程亲和力
- 找出哪个模块设置处理器亲和力掩码