1.值类型变量,通过参数传递会导致锁被复制
2.不可重入
3.不可重复unlock,或者是unlock未lock的mutex
RWMutex1.在Mutex的基础上进行了扩展
2.写写,写读之间互斥,读读之间共享
3.解锁时,优先读者
条件变量1.初始化条件变量必须使用mutex指针
2.wait需要伴随着mutex的加锁,因为wait内部会把当前goroutine放入等待队列,然后进入等待,此时他会做解锁操作,当他从等待状态被唤醒时,会重新加锁
3.signal和broadcast不需要加锁使用,区别是唤醒一个还是唤醒全部