>百科大全> 列表
aqs为什么要从尾部开始唤醒
时间:2025-04-11 03:39:44
答案

在AQS(AbstractQueuedSynchronizer)中,从尾部开始唤醒的原因是为了保证公平性。AQS是一个使用FIFO队列来维护线程状态的同步器,当一个线程需要获取锁时会被加入到等待队列的尾部。

如果从队列的头部开始唤醒,那么等待时间较长的线程就可能会被饿死(永远得不到执行),这违背了公平性的原则。

因此,从队列的尾部开始唤醒,保证了等待时间最长的线程首先得到执行的机会,提高了线程竞争的公平性。

推荐
Copyright © 2025 解决知识网 |  琼ICP备2022020623号 |  网站地图