Как в Win64 узнать, сколько процессорных ядер в системе?


Для получения информации о количестве процессорных ядер в системе можно воспользоваться переменной окружения Windows NUMBER_OF_PROCESSORS. Ниже приведён фрагмент кода на C++, в котором с помощью метода WinAPI GetEnvironmentVariable извлекается и выводится на экран содержимое данной переменной среды.

#include <windows.h>
#include <tchar.h>
#include <stdio.h>

#define VARNAME TEXT("NUMBER_OF_PROCESSORS")
#define BUFSIZE 4096

int main()
{
  TCHAR buf[BUFSIZE];
  DWORD dwRet = GetEnvironmentVariable(VARNAME, buf, BUFSIZE);
  if (dwRet > 0 && dwRet < BUFSIZE)
    _tprintf(_T("Number of processors: %s\n"), buf);

  return 0;
}

Библиографический список



Найдите ошибки в своем C, C++, C# и Java коде

Предлагаем попробовать проверить код вашего проекта с помощью анализатора кода PVS-Studio. Одна найденная в нём ошибка скажет вам о пользе методологии статического анализа кода больше, чем десяток статей.

goto PVS-Studio;



Найденные ошибки

Проверено проектов
361
Собрано ошибок
13 417

А ты совершаешь ошибки в коде?

Проверь с помощью
PVS-Studio

Статический анализ
кода для C, C++, C#
и Java

goto PVS-Studio;