线程同步问题

在多线程的情况下,为了保证同一变量的唯一性和确定性。要加入同步锁。具体用法百度。

1. synchronized关键字:代码块同步和方法块同步。

                 本质:都是对java对象监视器的操作,java对象都有自己的监视器。

2. ReentrantLock锁:

                 JAVA SE5.0之后,Lock接口,锁获取与释放的可操作性,可中断的获取锁以及超时获取锁。

3. 重入锁:Java里面内置锁(synchronized)和Lock(ReentrantLock)都可重入。自己可以再次获取自己的内部锁。

4. 公平锁:CPU在调度线程的时候是在等待队列里随机挑选一个线程,是不公平的。

                    synchronized非公平锁:导致饥饿现象

                    ReentrantLock锁是公平锁。

5. 可中断锁:synchronized不是可中断锁,而Lock是可中断锁。

6. 读写锁:读锁和写锁,多个线程之间的读操作可以并发进行。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值