SetProcessAffinityMask WinAPI函数具有dwProcessAffinityMask参数,其中每个位对应于系统中的单个逻辑处理器。
GetLogicalProcessorInformation WinAPI函数具有PSYSTEM_LOGICAL_PROCESSOR_INFORMATION类型的输出参数Buffer;此结构的ProcessorMask字段是“标识此结构描述的处理器的处理器掩码”。
有保证,这两个掩码中的位索引是否相同(对应于相同的逻辑处理器)?
我在MSDN上找不到任何明确的信息。
答案 0 :(得分:2)
进程关联掩码是一个位向量,其中每个位表示允许进程的线程运行的逻辑处理器。
SYSTEM_LOGICAL_PROCESSOR_INFORMATION不太清楚:
ProcessorMask 标识此结构描述的处理器的处理器掩码。处理器掩码是一个位向量,其中每个设置位代表关系中的活动处理器。
但GetLogicalProcessorInformation提供了更好的信息:
缓冲区中返回的每个SYSTEM_LOGICAL_PROCESSOR_INFORMATION结构包含以下内容:
•逻辑处理器关联掩码,指示结构中的信息适用的逻辑处理器。
引用的逻辑处理器关联掩码是ProcessorMask成员。