您的位置:首页 > 运维架构 > Linux

加锁

2016-04-23 02:00 309 查看
加锁定义

加锁其实就是实现保护一个线程不被其他线程所干扰它的执行

Linux 有几种加锁,什么情况下会加锁

spin_lock(忙等待的锁)

mutex(互斥锁)

rw_XXX(读写锁)等

不同的锁会在不同的情况下加上

比如互斥锁,同一时间内只有一个任务持有互斥锁,而且只有这个任务可以对互斥锁进行解锁,这样就防止了其他前程的干扰,只有这个线程解锁才能进入

自旋锁:自旋锁其实和互斥锁有点相似,只是自旋锁不会引起调用者睡眠,而且自旋锁的效率要高于互斥锁

在代码中主要通过调用不同的接口来实现加锁
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  线程 linux