2018年12月15日

摘要: Exchanger 创建实例 线程间交换数据 java / 阻塞等待其他线程到达交换点后执行数据交换,支持中断 / @SuppressWarnings("unchecked") public V exchange(V x) throws InterruptedException { Object v 阅读全文
posted @ 2018-12-15 17:45 竺旭东 阅读(156) 评论(0) 推荐(0) 编辑
摘要: Phaser 创建实例 到达此阶段,并阻塞等待其他参与者到达,等价于 {@code awaitAdvance(arrive())}. 到达此阶段 && 将下一阶段的参与者数目 1 尝试在指定的阶段阻塞等待 java / 如果当前阶段值==phase,则阻塞等待 / public int awaitA 阅读全文
posted @ 2018-12-15 16:44 竺旭东 阅读(274) 评论(0) 推荐(0) 编辑
摘要: CyclicBarrier 创建实例 java / 栅栏的分代,循环递增 / private static class Generation { Generation() {} // 此带的栅栏是否已经被破坏 boolean broken; } / 保护进入屏障的锁 / private final 阅读全文
posted @ 2018-12-15 12:30 竺旭东 阅读(108) 评论(0) 推荐(0) 编辑
摘要: CountDownLatch 创建实例 java private static final class Sync extends AbstractQueuedSynchronizer { private static final long serialVersionUID = 49822649819 阅读全文
posted @ 2018-12-15 12:06 竺旭东 阅读(86) 评论(0) 推荐(0) 编辑
摘要: Semaphore 创建实例 java private final Sync sync; / 信号量的同步器实现 / abstract static class Sync extends AbstractQueuedSynchronizer { private static final long s 阅读全文
posted @ 2018-12-15 11:53 竺旭东 阅读(150) 评论(0) 推荐(0) 编辑
摘要: ForkJoinPool 核心参数+创建实例 工作者线程的执行逻辑 ForkJoinTask.fork/join/invoke fork:将任务提交到 ForkJoinPool 中异步执行 join invoke java / 立即在当前线程中执行此任务,等待任务执行完毕并返回结果, 或抛出 Run 阅读全文
posted @ 2018-12-15 10:42 竺旭东 阅读(763) 评论(0) 推荐(1) 编辑

导航