Выяснение, в каком модуле установлена ​​маска сродства процессора

Я сталкиваюсь с проблемой, когда мое 32-разрядное приложение командной строки, когда оно запускается из командной строки Windows или другим способом, настроено на использование только первых 32 ядер ЦП в 64-ядерной системе. Глядя на маску привязки ЦП этого процесса в диспетчере задач, я вижу, что проверены только первые 32 ЦП, а последние 32 ЦП не проверены.

Я убедился, что мой код не вызывает SetProcessAffinityMask, но как я могу узнать, вызывает ли какой-либо из сторонних модулей эту функцию? И могут ли такие вещи, как вызов SetThreadPriority, изменить маску привязки к процессору?

0

Решение

В соответствии с MSDN, 32-битные приложения получают доступ только к 32 процессорам. Даже если вы сами не вызываете API сродства, скорее всего, они используются за кулисами при инициализации.

1

Другие решения


По вопросам рекламы ammmcru@yandex.ru
Adblock
detector