Does that mean that one can use system threads as frivolously as goroutines (e.g. spawning new thread for each incoming request)? Conventional C++ wisdom advices against it. But then it may be informed by some old and bad pthreads implementations.
Yes. In fact, under Linux oftentimes spawning a thread and then running a system call can be faster than just running a system call.
> Conventional C++ wisdom advices against it.
With 32 bit CPU's you might run out of virtual memory quickly, since each thread allocates virtual memory for its stack.
With 64 bit CPU's there are no issues. (Also never forget that virtual memory isn't real memory, it's just a page counter.)
Interesting, do you have any further info (references, cites) on this?