目录

Go concurrency

Goroutine

启动一个Goroutine时,要知道它什么情况下会结束,并在其结束时能够得知
channel用来在Goroutine之间进行通信(传输数据)与同步(互斥锁、信号量(用buffered channel))

让调用者来控制并发(leave concurrency to the caller)

channel、waitGroup、context

内存模型

sync

chan

其他

log.Fatal()会导致defer不会调用,一般只在main函数或init函数中使用