
多线程
chenxuezhou
工作闲暇之时,做点知识点总结,比较散乱。
展开
-
同步队列&锁的设计
tryAcquire(int arg) :独占式获取同步状态,该方法需要查询当前状态并判断同步状态是否符合预期,然后再进行CAS设置同步状态tryRelease(int arg) :独占式释放同步状态,等待获取同步状态的线程将有机会获取同步状态tryAcquireShared(int arg) :共享式获取同步状态,返回大于等于0的值,表示获取成功,否则失败tryReleaseShared...原创 2018-07-18 17:07:54 · 416 阅读 · 0 评论 -
Map实现类
LinkedHashMap:https://www.jianshu.com/p/8f4f58b4b8abConcurrentSkipListMap:1.https://www.jianshu.com/p/990e312586762.https://blog.youkuaiyun.com/weixin_40003295/article/details/82735959跳表具体实现...原创 2018-06-11 17:42:22 · 2212 阅读 · 0 评论 -
CompletableFutureAPI 场景含义
CompletableFuture类实现了CompletionStage和Future接口。Future是Java 5添加的类,用来描述一个异步计算的结果,但是获取一个结果时方法较少,要么通过轮询isDone,确认完成后,调用get()获取值,要么调用get()设置一个超时时间。但是这个get()方法会阻塞住调用线程,这种阻塞的方式显然和我们的异步编程的初衷相违背。为了解决这个问题,JDK吸收了...原创 2019-01-17 15:09:01 · 496 阅读 · 0 评论 -
子父线程等待模型设计
子父线程等待的FutureTaskJDK简易版,很多细节就不写了,意义不是很大,还有很多面试人会问cancel,我也不太清楚有啥用,一个中断和非中断取消,中断立即结束当前callable任务,get是个持续过程,构造死循环单出口状态!package practise;import java.util.concurrent.Callable;import java.util.co...原创 2018-07-23 15:31:24 · 198 阅读 · 0 评论