浅拷贝:只拷贝地址,不拷贝底层内容

深拷贝:也拷贝底层内容

6.13.1 运行环境相关

6.13.2 协程控制

6.14.1 Mutex互斥锁

sync包定义的结构体

如果已经上锁,一个协程尝试再次调用上锁,则会被阻塞到解锁为止

6.14.2 WaitGroup

sync包定义的结构体

通过计数器来获得阻塞能力

6.14.3 Cond

sync包定义的结构体,一个字段为L sync.Locker

sync.Locker为sync包定义的接口,要求实现Lock()与Unlock()

也就是说sync.Mutex实现了该接口

Cond提供了同时控制多个协程阻塞的能力

6.14.4 Once

sync包定义的结构体

来确保一个函数只被执行一次

6.14.5 Map

sync包定义的结构体

并发安全的键值对

6.14.6 Pool

sync包定义的结构体,一个字段为New func() interface{}

并发安全、动态容量、无序的value池,适合存储临时对象

6.14.7 RWMutex读写互斥锁

sync包定义的结构体

如果已经上锁,一个协程尝试再次调用上锁,则会被阻塞到解锁为止

为单写多读提供更加性能