On Sunday, 10 July 2016 at 19:49:11 UTC, Sergey Podobry wrote:
On Saturday, 9 July 2016 at 13:48:41 UTC, Dicebot wrote:
Nope, this is exactly the point. You can demand crazy 10 MB of
stack for each fiber and only the actually used part will be
allocated by kernel.
Remember that virtual address space is limited on 32-bit
platforms. Thus spawning 2000 threads 1 MB stack each will
occupy all available VA space and you'll get an allocation
failure (even if the real memory usage is low).
Sorry, but someone who tries to run highly concurrent server
software with thousands of fibers on 32-bit platform is quite
unwise and there is no point in taking such use case into
account. 32-bit has its own niche with different kinds of
concerns.