AQS中的CLH
这种方式可以保证在多线程并发访问时,所有请求锁的线程能够按照先来先服务的顺序获取锁,并且能够有效避免死锁和饥饿等问题。AQS(AbstractQueuedSynchronizer)是 Java 中用于实现锁和同步器的基础框架,它使用了一种名为 CLH(Craig, Landin, and Hagersten)的队列算法。因此,AQS 中使用 CLH 队列算法来实现同步器的加锁和释放,从而达到了高效、公平、可扩展的效果。这种方式可以保证所有请求锁的线程按照先来先服务的顺序获取锁,从而达到公平性的效果。
原创
2024-03-10 15:46:04 ·
352 阅读 ·
0 评论