![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java并发包源码
java并发包源码注释
少伟_liu
这个作者很懒,什么都没留下…
展开
-
11 CompletableFuture 源码注释
// tryFire()// 1、(d = dep) == null : 若上一阶段是异步的,completion放入堆栈后,上一阶段完成了,然后此线程// 执行tryFire() 就可能和上一阶段执行的线程产生竞争(上一阶段的线程调用postCompletion()方法,执行// 该completion的 tryFire()方法)。因此,此时dep可能为 null。// 2、如果将 completion放入上一阶段的堆栈时,刚好上一个阶段已经完成了,则压入堆栈会失败,但是由于上一...原创 2021-01-22 09:00:22 · 401 阅读 · 0 评论 -
10 ReentrantReadWriteLock
/** * 1、 如果已经有线程获取了读锁,线程A在等待获取写锁,此时线程B将要获取读锁 -- 如果线程B还没获取过读锁,因为有线程A在等待获取 * 写锁,所以会导致线程B阻塞;如果线程B是重入获取读锁,那么可以再次获取读锁,不可以阻塞线程B,一旦阻塞将导致读锁无法完全释放, * 导致死锁。 * */public class ReentrantReadWriteLock implements ReadWriteLock, java.io.Seriali...原创 2021-01-22 08:43:33 · 219 阅读 · 0 评论 -
9 AbstractQueuedSynchronizer源码注释
package java.util.concurrent.locks;import java.util.concurrent.TimeUnit;import java.util.ArrayList;import java.util.Collection;import java.util.Date;import sun.misc.Unsafe;public abstract class AbstractQueuedSynchronizer extends AbstractOwnab..原创 2021-01-22 08:40:20 · 221 阅读 · 0 评论 -
7 ConcurrentHashMap 源码注释1
public class ConcurrentHashMap<K,V> extends AbstractMap<K,V> implements ConcurrentMap<K,V>, Serializable { private static final long serialVersionUID = 7249069246763182397L;/* ---------------- Constants -------------- */ /.原创 2021-01-21 08:53:36 · 213 阅读 · 0 评论 -
8 ConcurrentHashMap 源码注释2
/** * 如果指定的值key还没有关联到一个value,那么尝试使用给定的函数计算它的值, * 如果值不为null,则将它放入此map中 * If the specified key is not already associated with a value, * attempts to compute its value using the given mapping function * and enters it into this map un.原创 2021-01-21 08:59:09 · 234 阅读 · 0 评论 -
1 ThreadPoolExecutor 源码注释
package java.util.concurrent;import java.util.concurrent.locks.AbstractQueuedSynchronizer;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.ReentrantLock;import java.util.concurrent.atomic.AtomicInteger;import java.util....原创 2021-01-20 09:26:26 · 249 阅读 · 0 评论 -
6 CountedCompleter 源码注释
package java.util.concurrent;/** * A ForkJoinTask ,当触发并且没有剩余的待处理操作时执行完成操作。 * A {@link ForkJoinTask} with a completion action performed when * triggered and there are no remaining pending actions. * 总的来说,与其他形式的forkjointask相比,CountedCompleters在存在子任务停..原创 2021-01-20 09:21:14 · 169 阅读 · 0 评论 -
5 ForkJoinTask 源码注释
package java.util.concurrent;import java.io.Serializable;import java.util.Collection;import java.util.List;import java.util.RandomAccess;import java.lang.ref.WeakReference;import java.lang.ref.ReferenceQueue;import java.util.concurrent.Callable;...原创 2021-01-20 09:19:05 · 339 阅读 · 0 评论 -
4 ForkJoinPool 源码注释2
/** * 运行任务直到isQuiescent()。我们利用活动计数ctl维护,但不是在找不到任务时阻塞, * 而是重新扫描,直到其他所有工作者也找不到任务。 * Runs tasks until {@code isQuiescent()}. We piggyback on * active count ctl maintenance, but rather than blocking * when tasks cannot be found, we re.原创 2021-01-20 09:06:00 · 155 阅读 · 0 评论 -
3 ForkJoinPool 源码注释1
package java.util.concurrent;import java.lang.Thread.UncaughtExceptionHandler;import java.util.ArrayList;import java.util.Arrays;import java.util.Collection;import java.util.Collections;import java.util.List;import java.util.concurrent.AbstractE...原创 2021-01-20 09:04:15 · 436 阅读 · 0 评论 -
2 ConcurrentSkipListMap 源码注释
/* * * * * * * Written by Doug Lea with assistance from members of JCP JSR-166 * Expert Group and released to the public domain, as explained at * http://creativecommons.org/publicdomain/zero/1.0/ */package java.util.concurrent;import java.i..原创 2021-01-20 08:57:13 · 238 阅读 · 0 评论