6、ThreadPoolExecutor对象有哪些参数?都有什么作用?怎么设定核心线程数和最大线程数?拒绝策略有哪些?
参数与作用:共7个参数
线程池大小设置:
拒绝策略:
1、 AbortPolicy:直接抛出异常,默认策略;
2、CallerRunsPolicy:用调用者所在的线程来执行任务;
3、DiscardOldestPolicy:丢弃阻塞队列中靠最前的任务,并执行当前任务;
4、DiscardPolicy:直接丢弃任务;
当然也可以根据应用场景实现 RejectedExecutionHandler 接口,自定义饱和策略,如记录日志或持久化存储不能处理的任务
7、常见线程安全的并发容器有哪些?
CopyOnWriteArrayList、CopyOnWriteArraySet、ConcurrentHashMap
CopyOnWriteArrayList、CopyOnWriteArraySet采用写时复制实现线程安全
ConcurrentHashMap采用分