国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > 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的出队方法,相信大家已经对于阻碍队列中元素的操作得心应手。同时不要忘记在针对不同队列时,一些使用事项的注意点。

关注

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

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

公车上双乳被两男人夹击电影| 下面太紧了和太粗太硬的做会痛| 一线产区和二线产区的标准图| 7777777亚洲和欧洲尺码表| 公交车上双乳被老汉揉搓玩下载| 主人请好好疼爱里面动画第二季 | 18岁的少女与狗高清电视剧 | 黑料不打烊| 啪啪影院| 33D蜜桃成熟| 丰满的女教师HD中字3D| 《出差的日子》叶爱| 浏览器| 暴躁妹妹免费观看40集电视剧| 两人一起做AJ的视频教程| 坤坤寒入桃子里电视剧| 美国伦理《欲奴3)| 电影《满足2》完整版在线观看| 《再来一次好吗》动浸| 国产在线观看免费全集电视剧网站 | 黑色蕾丝女装大长腿| 羞答答在线观看免费高清电视剧| 小妈爱上继子免费观看电视剧| 扒开腿挺进肉蒂抽搐喷潮BL| C罗正式加盟拜仁| 母与子免费观看大全电视剧邻居大.. | 把你CAO烂好不好高H| 吻戏| 俄罗斯少女2免费观看| 小雨和公做爰22章| 白丝女| 白色变态蕾丝超薄开档连身袜| 少女的夜晚初体验免费观看电视剧| 乱肉辣伦短文(全肉)| 免费观看已满十八岁电视剧中文版..| 妹妹的性放荡日记H| 国产免费观看高清电视剧| 别C我了~C烂了~啊~| 挤牛奶和拔萝卜能同吃吗| 我妈妈同意你再做一次心理咨询| 没带置子让他吃了一天的药怎么办