代码改变世界

Linux synchronous系列

2011-09-29 15:42  Aga.J  阅读(373)  评论(2编辑  收藏  举报

Mark Down! When I am spare, I will review it.

原子操作

用在位操作或者某个简单计数器(整型)可以使用原子增减等操作。

自旋锁

在加锁时间短的情况下可以使用,免去了传统的睡眠唤醒带来的开销

读写锁

读者多写者少的环境下使用,但是写者可能被饿死

信号量

信号不会丢失,在读者写者的环境下使用得多

条件变量

最常用的线程间同步等待某个条件发生,然后通知所有人

seqlock

解决了读者多,写者少时写者饿死的情况

互斥量

互斥访问某个临界区,资源保护,只能由一个进程或线程持有,并只有由它自己释放

记录上锁

上锁粒度可以缩小到文本中的字节范围

文件作为锁

 ..