请在 下方输入 要搜索的题目:

自旋锁/互斥锁/可重入锁/悲观锁

自旋锁/互斥锁/可重入锁/悲观锁

发布时间:2025-02-19 16:35:47
推荐参考答案 ( 由 快搜搜题库 官方老师解答 )
联系客服
答案:

1、什么是自旋锁?

自旋锁是采用让当前线程不停地的在循环体内执行实现的,当循环的条件被其他线程改变时 才能进入临界区。如下

50202906f2aa6351d3ec80b201b41918.png

2、什么是互斥锁?

指的是一次最多只能有一个线程持有的锁。我们通常使用synchronized机制控制多个线程对共享资源Lock接口及其实现类ReentrantLock

3、什么是可重入锁?

可重入锁,也叫做递归锁,指的是同一线程 外层函数获得锁之后 ,内层递归函数仍然有获取该锁的代码,但不受影响。

在JAVA环境下 ReentrantLock 和synchronized 都是 可重入锁。

c2b75bb2f06a87ba0b01b618bd6f9136.png

4、什么是悲观锁?

        悲观锁悲观的认为每一次操作都会造成更新丢失问题,在每次查询时加上排他锁。每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁。

专业技术学习
专业技术学习
搜搜题库系统