并发编程
并发编程
Content
-
atomic
-
thread
-
同步和异步
基本概念:并发是指多任务的同时执行,从而使现有资源得到充分利用并节省时间。比如我们可以在烧水的时候看书等。
关键字:同步,异步,阻塞,非阻塞,并行,并发,临界区,竞争条件,指令重排,锁,amdahl,gustafson
一、atomic
概念:atomic封装了不同计算机硬件的底层操作源语,提供了跨平台的原子操作功能,摆脱并发竞争读写变量的困扰。
用法:需要包含头文件#include<boost/atomic.hpp>以及using namespace boost;
类摘要:
atomic还针对整数类型和指针类型进行了特化,增加了一些特殊操作:
二、Thread