Прежде всего SetProcessAffinityMask()
принимает DWORD_PTR
.Поскольку 32-разрядные версии ОС не поддерживают> 32 ядра, это означает, что речь идет о 64-разрядной ОС.Таким образом, фактический предел для SetProcessAffinityMask()
составляет 64.
Что касается того, как обрабатывать> 64, я думаю, что Поддерживающие системы с более чем 64 процессорами в техническом документе скажут вам, что вам нужнознать.
РЕДАКТИРОВАТЬ
Вы заявляете в комментариях, что ваш код работает на 64-битной ОС на 64-битной ОС.
Как яПоймите, существует ограниченная поддержка очень тонкого контроля, если вы работаете внутри 32-битного эмулятора на 64-битной ОС.Предполагается, что если вы хотите воспользоваться этими новыми возможностями, вы должны прекратить использование эмулятора.