ReentrantLock锁
1)公平锁:所有线程以队列的形式持有锁,先到先得;
2)非公平锁:线程持有锁的先后顺序与等待时间无关,随机获取锁的占有权;
ReentrantLock锁:轮询锁、定时锁、中断锁、读写锁;
读写锁:一个资源可以被多个读操作访问,或者被一个写操作访问,但是读写操作不能同时进行;
Condition对象:一个Condition对象关联一个Lock,Condition对象中的await()、signal()、signalAll()的功能和Object对象中的wait()、notify()、notifyAll()方法功能类似,await()方法使占有该Condition对象关联的锁的线程进入阻塞,signal()唤醒该线程;
AbstractQueuedSynchronizer(AQS)大多数同步容器或锁的实现都是基于AQS.
java并发编程实践(5)
最新推荐文章于 2024-09-25 10:59:43 发布