zoukankan      html  css  js  c++  java
  • 阻塞队列-SynchronousQueue

    1、阻塞队列-Synchronous是什么?

    Synchronous阻塞队列是一个不存储元素的队列,即单个元素队列。

    2、Synchronous阻塞队列代码验证

    public class SynchronousQueueDemo {
        public static void main(String[] args) {
    
            BlockingQueue queue = new SynchronousQueue();
    
            // 生产者线程进行put操作
            new Thread(()->{
                try {
                    System.out.println(Thread.currentThread().getName() + "	 put one");
                    queue.put("one");
    
                    System.out.println(Thread.currentThread().getName() + "	 put two");
                    queue.put("two");
    
                    System.out.println(Thread.currentThread().getName() + "	 put three");
                    queue.put("three");
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }, "t1").start();
    
            // 消费者线程进行take操作
            new Thread(()->{
                try {
                    TimeUnit.SECONDS.sleep(1);
                    System.out.println(Thread.currentThread().getName() + "	 take one");
                    queue.take();
    
                    TimeUnit.SECONDS.sleep(1);
                    System.out.println(Thread.currentThread().getName() + "	 take two");
                    queue.take();
    
                    TimeUnit.SECONDS.sleep(1);
                    System.out.println(Thread.currentThread().getName() + "	 take three");
                    queue.take();
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }, "t2").start();
        }
    }
  • 相关阅读:
    Struts2
    HIbernate缓存
    spring的静态代理和动态代理
    JVM与垃圾回收机制(GC)和类的生命周期
    java开发设计六大基本原则
    数据表链表结构
    HashMap的底层实现
    string与位运算
    log4j和logback
    C#深入类的方法
  • 原文地址:https://www.cnblogs.com/xhyouyou/p/12465305.html
Copyright © 2011-2022 走看看