-
序列化(serialization):多个线程轮流存取互斥元保护的数据,它们必须线性的而非并发的存取数据。
-
如何使得数据结构线程安全的基本原理:
-
保证当数据结构不变性被别的线程破坏时的状态不被任何别的线程看到。
-
注意避免数据结构接口所固有的竞争现象,通过为完整操作提供函数,而不是提供操作步骤。
-
注意当出现例外时,数据结构是怎么样保证不变性不被破坏的。
-
当使用数据结构时,通过限制锁的范围和避免使用嵌套锁,来降低产生死锁的机会。
-
在实行数据结构的并发存取时,设计者需要问问自己:
- 使用条件变量的线程安全队列的完整类定义:
第六章 设计基于锁的并发数据结构
原文:https://www.cnblogs.com/zhanghu52030/p/10481165.html