В процессе Windows есть ли предел для потоков, которые будут использоваться одновременно. Если да, каково максимальное количество потоков, которое можно использовать для одного процесса?
Я не знаю предела, но есть два практических ограничения:
dwStackSize
в CreateThread
или вариант /STACK
в команде компоновщика). Если вы используете 64-битную систему, этот предел практически исчезает.Фактический предел определяется количеством доступной памяти различными способами. Нет ограничений на то, что «вы не можете иметь больше, чем столько» потоков или процессов в Windows, но есть ограничения на то, сколько памяти вы можете использовать в системе, и когда это закончится, вы не сможете создать больше потоки.
Смотрите этот блог Марка Руссиновича:
http://blogs.technet.com/b/markrussinovich/archive/2009/07/08/3261309.aspx