java并发包:future模式
来源:互联网 发布:国语电影排行榜 知乎 编辑:程序博客网 时间:2024/05/20 06:23
本文转载至:http://blog.csdn.net/a910626/article/details/51900972
future模式是多线程开发中非常常见的一种设计模式,它的核心思想是异步调用。当我们需要调用一个函数方法时,如果这个函数执行很慢,那么我们就要进行等待。但有时候我们可能并不着急着要结果。因此,我们可以让被调用者立即返回,让他在后台慢慢处理这个请求。对于调用者来说,则可以先处理一些其他任务,在真正需要数据的场合再去尝试获得需要的数据。
Future模式有点类似于商品订单。在网上购物时,提交订单后,在收货的这段时间里无需一直在家里等候,可以先干别的事情。类推到程序设计中时,当提交请求时,期望得到答复时,如果这个答复可能很慢。传统的时一直等待到这个答复收到时再去做别的事情,但如果利用Future设计模式就无需等待答复的到来,在等待答复的过程中可以干其他事情。
对于future模式来说,虽然它无法立即给你需要的数据。但是,它会返回给你一个契约,将来,你可以凭借这个契约去重新获取你需要的信息。
Future模式java实现
(1) Data.Java
- 1
- 2
- 3
- 1
- 2
- 3
(2) RealData.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
(3) FutureData.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
(4) Client.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
(5) Main.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
输出结果:
请求完毕
数据 = aaaaaaaaaa
future jdk实现
(1) RealData.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
(2) Main.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
输出结果:
请求完毕
数据 = aaaaaaaaaa
0 0
- java并发包:future模式
- java并发包学习系列:future模式
- java并发包学习系列:future模式
- [Java并发包学习四]Future和FutureTask
- Java并发包Concurrent下Callable和Future实战
- [Java并发包学习四]Future和FutureTask
- [Java并发包学习四]Future和FutureTask
- [Java并发包学习四]Future和FutureTask
- [Java并发包学习四]Future和FutureTask
- [Java并发包学习四]Future和FutureTask
- 并发模式Future ,JAVA内置模块Callable接口实现 实例
- 并发程序设计之Future模式
- 并发编程(11)-Future模式
- Java.util.concurrent 包 使用Future,Callable实现抢答模式
- Java并发编程:Callable、Future
- Java并发之Callable、Future
- Future模式,并发程序的设计模式
- 并发程序设计模式之Future模式
- 迭代器
- 如何使用阿里百川hotfix热修复功能(一)
- css盒模型
- python3+PyQt5 自定义视图
- laravel5.4 ftp新建目录出错
- java并发包:future模式
- 合并石子java
- 基于OSSFS挂载阿里云OSS至本地使用
- C++读取配置文件,重点是读取XML配置文件
- Python基础入门(三)- Python程序怎样运行
- javaIO file类
- 党的十八大光辉照亮了北京大学校园
- Linux误删C基本运行库libc.so.6急救方法
- 199. Binary Tree Right Side View | 从右边看二叉树得到的集合