Earlier quoted context omitted.
Normally a POSIX thread gets a very large stack (1MB is typically the default), and obviously these "virtual stacks" will only be as large as they grow (splayed on the heap?). But the memory for those POSIX thread stacks isn't necessarily allocated up front! The OS grows the thread when the thread traps trying to access the guard page, so it's not really a 1MB stack. Now, if you need to serve 1e6 clients with threads…
could you explain difference between CPS and using “Async/Await). I have a C# background but always assumed they where the same thing!
async/await == the syntax and compiler help you manage the callback hell