Goroutines

一个 goroutine 是由 Go 运行时管理的轻量级线程。

go f(x, y, z)

会启动一个新的 goroutine 来运行

f(x, y, z)

f、 x、 y 和 z 的求值发生在当前 goroutine 中,而 f 的执行发生在新的 goroutine 中。

Goroutines 运行在同一个地址空间中,因此对共享内存的访问必须进行同步。sync 包提供了实用的同步原语,不过在 Go 中你并不会经常用到它们,因为还有其他原语可用。(见下一页。)

< 1/11 >