- 它是基于链表的阻塞队列,其内部也维护这一个数据缓冲队列(该队列由链表组成),LinkedBlockingQueue能够高效的处理并发数据,是因为其内部实现了分离锁,从而实现消费者和生产者完全并行,是一个无界队列。
- public class UseQueue {
- public static void main(String[] args) throws Exception {
- //阻塞队列
- LinkedBlockingQueue<String> q = new LinkedBlockingQueue<String>();
- q.offer("a");
- q.offer("b");
- q.offer("c");
- q.offer("d");
- q.offer("e");
- q.add("f");
- System.out.println(q.size());
- for (Iterator iterator = q.iterator(); iterator.hasNext();) {
- String string = (String) iterator.next();
- System.out.println(string);
- }
- }
- }
- 输出结果:
- 6
- a
- b
- c
- d
- e
- f
12.LinkedBlockingQueue
