-
自旋锁:是指当一个线程在获取锁失败时将一直循环等待,不断重新获取锁,直到获取到锁才会退出循环,自旋锁会让线程一直处于用户态,不会发生上下文切换,
-
非自旋锁获取锁失败会进入阻塞状态,从而进入内核态
-
上下文切换是非常耗时的,当同步代码块/临界区的内容并不多且并发度不是很高时,使用自旋锁可以提高效率,否则使用自旋锁会白白消耗资源
自旋锁和非自旋锁超简洁描述
最新推荐文章于 2023-08-13 18:03:18 发布
自旋锁:是指当一个线程在获取锁失败时将一直循环等待,不断重新获取锁,直到获取到锁才会退出循环,自旋锁会让线程一直处于用户态,不会发生上下文切换,
非自旋锁获取锁失败会进入阻塞状态,从而进入内核态
上下文切换是非常耗时的,当同步代码块/临界区的内容并不多且并发度不是很高时,使用自旋锁可以提高效率,否则使用自旋锁会白白消耗资源