java
文章平均质量分 94
tong_master
这个作者很懒,什么都没留下…
展开
-
CompletableFuture 详解(二):supplyAsync / runAsync 实现原理 源码分析
前面CompletableFuture详解(一):基本概念及用法讲了CompletableFuture的使用,从这篇开始,我们深入了解CompletableFuture的实现,以便于大家更深入的理解CompletableFuture是如何运行的,这也有利于大家正确地使用CompletableFuture。本篇主要介绍 supplyAsync和runAsync的实现。1、supplyAsync的实现我们主要看入参为Supplier的版本。因为另外一个版本的supplyAsync函数,除了增加了自定原创 2020-07-25 18:54:44 · 42009 阅读 · 4 评论 -
CompletableFuture 详解(一):基本概念及用法
CompletableFuture是java 8的j.u.c库中新增的主要工具。因此,深入理解CompletableFuture有助于更好地使用java 8中提供的并行编程工具。1、为什么叫CompletableFuture?因为,同传统的Future相比较,CompletableFuture能够主动设置计算的结果值(主动complete计算过程,即completable),从而在某些场景下主动结束阻塞等待。而Future由于不能主动设置计算结果值,一旦调用get()进行阻塞等待,要么当计算结果产生原创 2020-07-24 23:15:46 · 34131 阅读 · 16 评论 -
理解Java volatile -- 从Memory Barrier谈起(一)
相信很多同学在学习java并行编程的时候,都会接触到java内存模型(JMM: java memory model)这个概念。那么为了理解java内存模型,大家当然一般都会去看Doug Lea的这篇对JMM的解释文章。通过这篇文章,我们知道,volatile关键字主要是通过相关芯片的memory barrier机制实现的。那么,我们为了彻底理解volatile关键字,主要的工作就是弄懂memory...原创 2018-12-25 23:59:39 · 740 阅读 · 0 评论