美文网首页
queue的两大类

queue的两大类

作者: 激情的狼王 | 来源:发表于2018-05-04 16:26 被阅读0次

Queue接口与List、Set同一级别,都是继承了Collection接口。队列是一种数据结构.它有两个基本操作:在队列尾部加人一个元素,和从队列头部移除一个元素,队列以一种先进先出的方式管理数据。

队列分为两种,阻塞队列和非阻塞队列。阻塞队列是如果你试图向一个 已经满了的阻塞队列中添加一个元素或者是从一个空的阻塞队列中移除一个元索,将导致消费者线程或者生产者线程阻塞,非阻塞队列是能即时返回结果(消费者),但必须自行编码解决返回为空的情况处理(以及消费重试等问题)。这两种都是线程安全的。

1.阻塞队列BlockingQueue

ArrayBlockingQueue,DelayQueue,LinkedBlockingDeque,LinkedBlockingQueue,LinkedTransferQueue,PriorityBlockingQueue,SynchronousQueue

2.非阻塞队列

ConcurrentLinkedDeque,ConcurrentLinkedQueue

理论上非阻塞队列更高效,但是实际应用中阻塞队列已经可以应付大多数的并发了。

相关文章

  • queue的两大类

    Queue接口与List、Set同一级别,都是继承了Collection接口。队列是一种数据结构.它有两个基本操作...

  • JUC集合

    java集合类 java集合类里面主要包含两大类:一类是Collection接口下的List、Set和Queue接...

  • queue

    queue构造函数 queue queT;//queue采用模板类实现,queue对象的默认构造形式: queue...

  • Python 3 Queue编程

    FIFO Queue, IFFO Queue, Priority Queue

  • Queue模块

    一、class Queue.Queue 类 Queue类表示使用FIFO队列 Queue.qsize()返回队列的...

  • Start from zore, from java

    Notes about queue when learningNeed more Queue queue = n...

  • Dispatch Queue

    queue types Serial Concurrent Main dispatch queue Queue-R...

  • iOS GCD

    Dispatch Queue dispatch_set_targte_queue dispatch_queue_c...

  • iOS 要求执行完 任务A,B 后才能执行任务C

    dispatch_queue_t queue = dispatch_get_global_queue(DISPAT...

  • 同步线程自锁

    dispatch_queue_t queue = dispatch_queue_create("test", NU...

网友评论

      本文标题:queue的两大类

      本文链接:https://www.haomeiwen.com/subject/xlodrftx.html