多线程同步的几种方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程同步的几种方法相关的知识,希望对你有一定的参考价值。

1. 加mutex。由于现在的锁都是基于futex,无竞争时并不会切换上下文,效率还不错,最靠谱的方式。

2.用原子操作。原子操作在硬件上类似锁总线避免多核视图不一致,软件方面C++标准库中有各种memory_order,memory_order选的合适比mutex快。

3.延迟删除。保证真正删除数据时已经没有新的对数据的引用(因此唯一对被删除数据的引用就是正在执行删除的线程中的引用),避免了竞争。

以上是关于多线程同步的几种方法的主要内容,如果未能解决你的问题,请参考以下文章

C++多线程同步的几种方式

C++多线程同步的几种方式

C++多线程同步的几种方式

C#线程同步的几种方法

C#线程同步的几种方法

C#线程同步的几种方法