05 2017 档案
摘要:1. 使用细粒度锁和条件变量的线程安全队列 可以使用细粒度的锁来减小队列的临界区,这里使用了一个dummy node用来进一步减小锁的临界区。若要判断队列是否为空,只需要执行下述判断: 请注意,因为在进行push的时候需要修改tail,所以对tail的访问和修改都需要进行加锁。这里使用get_tai
阅读全文
摘要:C++ 原子类型 原子操作:一个不可分割的操作。 标准原子类型可以在头文件之中找到,在这种类型上的所有操作都是原子的。它们都有一个 的成员函数,让用户决定在给定类型上的操作是否用原子指令完成。唯一不提供 成员函数的类型是 ,在此类型上的操作要求是无锁的。可以利用 实现一个简单的锁。 C++ 11中的
阅读全文

浙公网安备 33010602011771号