G:
代表一个goroutine,它有自己的栈,instruction pointer和其他信息(正在等待的channel等等),用于调度
M
M代表内核级线程,一个M就是一个线程
P
逻辑处理器,它的主要用途就是绑定一个M用来执行goroutine的,所以它也维护了一个goroutine队列,里面存储了所有需要它来执行的goroutine
G:
代表一个goroutine,它有自己的栈,instruction pointer和其他信息(正在等待的channel等等),用于调度
M
M代表内核级线程,一个M就是一个线程
P
逻辑处理器,它的主要用途就是绑定一个M用来执行goroutine的,所以它也维护了一个goroutine队列,里面存储了所有需要它来执行的goroutine