韩漫免费漫画在线观看方法,《好好疼爱里面》免费看,年轻漂亮的女士护士内衣,妈妈醉酒后把我当爸爸电视剧

文章 > java基础 > DelayQueue在java的出队

DelayQueue在java的出队

头像

小妮浅浅

2021-02-09 14:02:322767浏览 · 0收藏 · 0评论

本教程操作环境:windows7系统、java10版,DELL G3电脑。

1.DelayQueue类

public class DelayQueue<E extends Delayed> extends AbstractQueue<E>
implements BlockingQueue<E>

DelayQueue 继承AbstractQueue抽象类,实现BlockingQueue接口,元素必须实现实现Delayed接口。

2.take()出队流程

(1)加锁;

(2)判断堆顶元素是否为空,为空的话直接阻塞等待;

(3)判断堆顶元素是否到期,到期了直接poll()出元素;

(4)没到期,再判断前面是否有其它线程在等待,有则直接等待;

(5)前面没有其它线程在等待,则把自己当作第一个线程等待delay时间后唤醒,再尝试获取元素;

(6)获取到元素之后再唤醒下一个等待的线程;

(7)解锁;

3.take出队实例

public E take() throws InterruptedException {
    final ReentrantLock lock = this.lock;
    lock.lockInterruptibly();
    try {
        for (;;) {
            E first = q.peek();
            if (first == null)
                available.await();
            else {
                long delay = first.getDelay(NANOSECONDS);
                if (delay <= 0)
                    return q.poll();
                first = null; // don't retain ref while waiting
                if (leader != null)
                    available.await();
                else {
                    Thread thisThread = Thread.currentThread();
                    leader = thisThread;
                    try {
                        available.awaitNanos(delay);
                    } finally {
                        if (leader == thisThread)
                            leader = null;
                    }
                }
            }
        }
    } finally {
        if (leader == null && q.peek() != null)
            available.signal();
        lock.unlock();
    }
}

以上就是DelayQueue在java的出队方法,相信大家已经对于阻碍队列中元素的操作得心应手。同时不要忘记在针对不同队列时,一些使用事项的注意点。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

坤坤寒进桃子里在线看歌词 | 成全视频高清免费观看好听的歌| 簧片在线观看| 《尼姑庵春梦》| 成全在线观看免费全集高清完整版 | 18岁免费观看高清电视剧推荐| 美女和男生一起努力的生孩子视频..| 浪货跪下给我好好含着羞辱调教| 欧美精产国品一二三区别| 人狗大战2免费观看正版| BOBO| 爷爷的鸡又黑又长下一句怎么接| 第一章破外女初尝云雨| 黄金网站软件APP| 日本《暴力强伦轩》| 姑父有力挺送小芳的背景故事| 四川少女B站免费入口| 黑瓜网-每日大赛 抖音风合集| 白丝| 男生把小因因放到女生困里视频 | 京香JULIA| 他扒开我小流添我三男一女视频| WWW.MD.GOVCN| 38.JJ| 妈妈醉酒后把我当爸爸电视剧 | 星空无痕MV免费视频观看| 成品网站1.1.719| 爸井空《办公室爱欲》| 交换的一天电影完整播放在线观看| 停电后我和公做了爱 | 三个老头拥着躁我一晚| 《我的漂亮老师2》| 引诱沉沦BY肉桂笔趣阁小说 | 疯狂二人房间荷尔蒙爆发原声| 星空电影在线观看免费完整版| 老板不让穿内裤随时做| 洪真英| 男人碰到紧的会念念不忘吗?| 亚洲尺码与欧洲尺码区别专线| 蜜桃视频| 久久久无码AV精品夜夜挺价格