同步与锁(Synchronization and Locks)
缩写:无
简述
协调并发执行流以安全访问共享资源的手段:互斥锁、读写锁、条件变量等。同步保证互斥与可见性;过度同步损害扩展,错误加锁导致死锁。
使用场景
共享可变结构、计数器、有限缓冲。
实践与应用
lock(共享资源)
临界区(尽量短)
unlock
// 多锁:全局统一加锁顺序,防死锁
注意事项
• 死锁与活锁
• 锁内调未知代码
• 遗忘释放
关联术语
• 线程:锁所协调的执行流
• 死锁:加锁不当的致命状态
• 竞态条件:同步要防止的问题
• 原子操作:更细粒度的同步原语