Я прочитал здесь, что:
В версиях версии 2.0, 3.5 и 4.0 ASP.NET инициализирует поток потоков CLR ThreadPool с 100 потоками на процессор (ядро)
Это правильно, я проверил его (у меня 8 основных машин, поэтому 8 * 100 = 800):
Но потом я увидел этот и this:
maxWorkerThreads - настраивает максимальное количество рабочих потоков для использовать для процесса на основе каждого процессора. Диапазон для этого атрибута от
5 through 100.
По умолчанию используется20
.
Вопрос
Я не вижу, как цифры подходят здесь:
В первом параграфе указано, что у меня есть 100 потоков на ядро (изображение доказывает это, я имею 8 ядер).
Но во втором абзаце говорится, что максимальные рабочие потоки по умолчанию для ядра равны 20. Таким образом, если у меня есть 8 ядер, тогда у меня должно быть 8 * 20 = 160 максимальных потоков. не 800.
Может кто-то пролить свет?
Update:
Я просто нашел способ получить значение ключевого элемента с помощью кода С#:
Итак, теперь число вписывается, но все же - MSDN говорит, что значение по умолчанию - 20, а не 100
И тогда они упоминают 100:
Что здесь происходит?