juc杂记
Posted afraidtoforget
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了juc杂记相关的知识,希望对你有一定的参考价值。
AtomicInteger 针对整数类型的原子操作,有getAndIncrement,compareAndSet等方法。
Thread 线程有三个常用属性,id,每次递增生成tid,同一个jvm中tid不重复;name,自定义的名字,从直观上识别是什么线程;daemon,是否是守护模式,为true表示jvm的退出不需要等待该线程完成任务。
ThreadGroup enumerate获取那一时刻的活跃线程,uncaughtException处理线程未捕获的异常,通过ThreadFactory给newThread设置ThreadGroup,可以处理线程未捕获的异常,使得,线程执行异常后,线程可以继续存活。
ThreadFactory 线程创建策略,可以指定线程的name和daemon。
BlockingQueue LinkedBlockingQueue和LinkedBlockingDeque是两个默认实现,deque是双向队列。
RejectedExecutionHandler ThreadPoolExecutor的workQueue是BlockingQueue,满队列workQueue.offer失败的时候,需要调用RejectedExecutionHandler的rejectedExecution方法来处理逻辑,这个函数是提交任务的线程执行的,即调用execute或submit方法的线程。
以上是关于juc杂记的主要内容,如果未能解决你的问题,请参考以下文章