Мне интересно, что возвращает свойство .NET Environment.ProcessorCount
. Возвращает ли количество ядер, количество процессоров или и то, и другое? Если бы на моем компьютере было 2 процессора, каждый с 4 ядрами, Environment.ProcessorCount
возвращал 2, 4 или 8?
Вопрос о Environment.ProcessorCount
Ответ 1
Он вернет переменную окружения NUMBER_OF_PROCESSORS. (см. MSDN)
Это будет равно количеству логических ядер, то есть если у вас есть однопроцессорный процессор с поддержкой HT, он вернет 2.
В вашем случае он должен вернуть 8.
Это будет тот же номер, что и количество графиков использования CPU, которые вы увидите в диспетчере задач.
Ответ 2
Он возвращает количество логических процессоров, поэтому 8 в вашем примере.
Ответ 3
Если на моем компьютере было 2 процессора, каждый с 4 ядрами, Environment.ProcessorCount return 2, 4 или 8?
Он возвращает 8, в моем случае в любом случае. (Core i7 860 cpu).