1 Star 0 Fork 0

jahentao / 异步编程

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 2.62 KB
一键复制 编辑 原始数据 按行查看 历史
jahentao 提交于 2018-05-31 22:38 . init

异步编程

项目介绍

Java异步编程,学习Demo

软件架构

软件架构说明

一些并发工具/接口的学习使用,基于JDK 8的新特性,所以请设置项目的SDK为JDK 8。

安装教程

  1. 参考例子来自博客
  2. 最好去了解一下Guava项目,其中的Futures。

使用说明

  1. 掌握Java异步编程接口和编程模型,首当其冲的是理解结果传递的关系。
  2. 首先要理解函数式编程的接口:ConsumerFunctionSupplier,它们与Runnable什么关系?
    1. Consumer这个接口只有输入,没有返回值。
    2. Runnable并不使用CompletableFuture计算的结果。
    3. ……注意总结
  3. 接着要理解的一个难点是,异常在其中的处理方式
  4. 总结:可以根据方法的参数的类型来加速你的记忆。
    1. Runnable类型的参数会忽略计算的结果,
    2. Consumer是纯消费计算结果,
    3. BiConsumer会组合另外一个CompletionStage纯消费,
    4. Function会对计算结果做转换,
    5. BiFunction会组合另外一个CompletionStage的计算结果做转换。

参考文献

  1. Java 8: Definitive guide to CompletableFuture
  2. https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html
  3. https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletionStage.html

参与贡献

  1. Fork 本项目
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

码云特技

  1. 使用 Readme_XXX.md 来支持不同的语言,例如 Readme_en.md, Readme_zh.md
  2. 码云官方博客 blog.gitee.com
  3. 你可以 https://gitee.com/explore 这个地址来了解码云上的优秀开源项目
  4. GVP 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
  5. 码云官方提供的使用手册 http://git.mydoc.io/
  6. 码云封面人物是一档用来展示码云会员风采的栏目 https://gitee.com/gitee-stars/
Java
1
https://gitee.com/jahentao/asynchronous_programming.git
git@gitee.com:jahentao/asynchronous_programming.git
jahentao
asynchronous_programming
异步编程
master

搜索帮助