golang并发与并行

golang默认是使用单核单线程跑的,goroutine比线程更轻量,goroutine建立在线程中,当前线程阻塞时会将剩余的goroutine分配到其他线程(此时也是使用单核)。如果需要使用并行处理需要开启多核心,使用runtime.GOMAXPROCS()开启。runtime.NumCPU()获取CPU核心数

目前默认已经是多核在跑了

https://blog.csdn.net/kjfcpua/article/details/18265441
https://blog.csdn.net/skh2015java/article/details/60330875

你可能感兴趣的:(golang,goroutine,多线程)