线程池状态 有更新! ThreadPoolExecutor继承了AbstractExecutorService,成员变量ctl是一个Integer的原子变量,用来记录线程池状态和线程池 2020-12-29 · hymn · java 多线程 线程池 · 0 评论 · 0 浏览
java 并发队列总结 有更新! ConcurrentLinkedQueue 无界非阻塞队列,底层用单链表实现,出队和入队用cas实现。 LinkedBlockingQueue 底层用单链表实现, 2020-12-29 · hymn · java 多线程 同步队列 · 0 评论 · 0 浏览
AQS 有更新! AbstractQueuedSynchronizer抽象同步队列简称AQS,它是实现同步器的基础组件,并发包中锁的底层就是使用AQS实现的 AQS是一个FIFO 2020-12-23 · hymn · java集合 java 多线程 · 0 评论 · 0 浏览
ThreadLocal 有更新! ThreadLocal 只是个工具类,真正的数据都是存在当前的线程内, get() public T get() { Thread t = Thread.curr 2020-12-21 · hymn · 多线程 java · 0 评论 · 0 浏览
interrupt() interrupted() isInterruped() 区别 void interrupt() 中断线程,例如A线程运行,B线程可以调用A的interrupt()方法来设置线程A的中断标志为true boolean inte 2020-12-18 · hymn · java 多线程 · 0 评论 · 0 浏览
使用ThreadLocal 在一个线程中,横跨若干方法调用,需要传递的对象,我们通常称之为上下文(Context),它是一种状态,可以是用户身份、任务信息等。 给每个方法增加一个contex 2020-12-04 · hymn · java 多线程 · 0 评论 · 0 浏览
ForkJoin Java 7开始引入了一种新的Fork/Join线程池,它可以执行一种特殊的任务:把一个大任务拆成多个小任务并行执行。 我们举个例子:如果要计算一个超大数组的和, 2020-12-04 · hymn · java 多线程 · 0 评论 · 0 浏览
使用Future 和 CompletableFuture 有更新! Future ExecutorService executor = Executors.newFixedThreadPool(4); // 定义任务: Calla 2020-12-04 · hymn · 多线程 java · 0 评论 · 0 浏览
ScheduledThreadPool 细节 创建一个 ScheduledThreadPool仍然是通过 Executors类: ScheduledExecutorService ses = Executor 2020-12-04 · hymn · 多线程 java · 0 评论 · 0 浏览
java.util.concurrent 有更新! ReentrantLock java.util.concurrent.locks包提供的 ReentrantLock用于替代 synchronized加锁 pub 2020-12-04 · hymn · java 多线程 · 0 评论 · 0 浏览