2021/2/20

一、队列

1、BlockingQueue接口 父接口是Queue,有如下两个实现类,记住四组操作方法

  • ArrayBlockingQueue
  • LinkedBlockingQueue

二、池化技术(回忆银行案例)

1、Executors三大方法

  • Executors.newSingleThreadScheduledExecutor();//单例,只有一个线程
  • Executors.newFixedThreadPool(5); //固定线程数
  • Executors.newCachedThreadPool();//缓存式,根据需要来增加线程数

2、ThreadPollExecutor七大参数

  • new ThreadPoolExecutor(
    int corePoolSize,
    int maximumPoolSize,
    long keepAliveTime,
    TimeUnit unit,
    BlockingQueue workQueue,
    ThreadFactory threadFactory,
    RejectedExecutionHandler handler
    )

3、第七个参数的四种拒绝策略

  • ThreadPoolExecutor.AbortPolicy
  • ThreadPoolExecutor.CallerRunsPolicy
  • ThreadPoolExecutor.DiscardPolicy
  • ThreadPoolExecutor.DiscardOldestPolicy

4、maximumPoolSize如何设置(调优)

  • IO密集型
  • CPU密集型(Runtime.getRuntime().availableProcessors()获取计算机逻辑处理器个数)

三、四大函数式接口(简化编程模型)

  • 函数型接口
  • 断定型接口
  • 消费型接口
  • 供给型接口
原文地址:https://www.cnblogs.com/yizhixiang/p/14423142.html