I have tried to find some onformation about how OS-threads are created, and 
what their roles are. I know that this doesn't really matter in a lot of 
cases since goroutines are multiplexed on top of OS-threads and they are 
usually created at startup of the program, but I'm just trying to 
understand what is happening.

Can someone help me understand this? So far, what I have found from various 
sources is:


   - GOMAXPROCS-number of threads are created to run Go-code, which used to 
   default to 1, but now defaults to the number of processors (whatever the 
   system shows as a processor) available to the machine.
   - If the code requires a syscall or has the potential to block, another 
   thread is created for this.
   - More thread(s) are created for GC


All of this is probably system-dependent, and Go-version dependent as well, 
so I know it's not the easiest thing to answer in a simple way.



-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to