Tamás is right.  In the case you show, M1 will pick up G2 and work on it.  
In general, the M (OS thread) finds another goroutine to run, and if it 
can't find one it parks itself until more goroutines show up.

The code is in src/runtime/proc.go:findrunnable, which calls stopm.

We've been contemplating destroying Ms that have been waiting around for a 
long time with nothing to do, but we haven't implemented that yet.

On Monday, April 9, 2018 at 2:03:54 PM UTC-7, Tamás Gulácsi wrote:
>
> AFAIK it'll be parked fir another goroutine.

-- 
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