Почему они это делают?
- это сложный вопрос, на который нужно правильно ответить.Теперь
Является ли это правильным способом определения процессора с «горячей» заменой?
легко - это не так, но цель функции не в этом.Весь код написан с допущением, что количество процессоров не изменяется во время выполнения, этот упрощенный тест просто сообщает вам, что это предположение нарушается.(и сбрасывает число, возвращаемое в ноль, возможно, чтобы не выскочить из некоторого массива, индексированного по номеру ЦП?)
Я ожидаю, что ваш следующий вопрос, вероятно, будет
Почему онипредположить постоянное количество процессоров?
Возможно, потому что это было намного проще реализовать, и никто не представил улучшенную версию, которая бы не имела этого ограничения?Вы можете сделать один ...: -)