1、Runnable和Callable的区别是:
(1)Callable规定的方法是call(),Runnable规定的方法是run().
(2)Callable的任务执行后可返回值,而Runnable的任务是不能返回值得
(3)call方法可以抛出异常,run方法不可以
(4)运行Callable任务可以拿到一个Future对象,表示异步计算的结果。它提供了检查计算是否完成的方法,以等待...
分类:
其他好文 时间:
2015-04-17 11:27:40
阅读次数:
132
1、异步计算
分布式计算听起来有点高大上,如果说异步计算,估计了解的人多了。我们在日常的工作和生活中,一般都能遇到或者用到异步计算。
比如年底要做很多的报表,领导把需要的报表安排下来,我和我的团队去做统计。为了不耽误领导的时间,不需要领导站在我们屁股后面亲自督战。对领导来说,这个就是一个简单的异步计算模型了。
我们的团队在统计的时候,数据量很多,系统要运行很久,我...
分类:
其他好文 时间:
2015-01-14 14:21:41
阅读次数:
130
概念 ????????ListenableFuture顾名思义就是可以监听的Future,它是对java原生Future的扩展增强。我们知道Future表示一个异步计算任务,当任务完成时可以得到计算结果。如果我们希望一旦计算完成就拿到结...
分类:
其他好文 时间:
2014-12-23 15:45:31
阅读次数:
179
一、概述
位于java.util.concurrent包下,类声明: public class
FutureTask extends
Object implements
RunnableFuture
可取消的异步计算。利用开始和取消计算的方法、查询计算是否完成的方法和获取计算结果的方法,此类提供了对
Future 的基本实现。仅在计算完成时才能获取结果;如果计算尚未完成,则阻...
分类:
编程语言 时间:
2014-12-23 12:28:08
阅读次数:
193
开发AndroidAPP经常会使用AsyncTask框架来异步加载资源或者异步到服务器拉消息,等任务完成后再主动更新结果到UI主线程,AsyncTask框架可以非常方便的获取线程异步执行结果。Java5之前,Java并没有提供API用于查询线程是否执行完毕以及如何获取线程执行的结果;Java5之后版本提..
分类:
其他好文 时间:
2014-11-14 18:04:57
阅读次数:
249
大家应该听我在前言篇里扯皮后,迫不及待要来一看Samza究竟是何物了吧?先了解一下Samza的Background是必不可少的(至少官网上是放在第一个的),我们需要从哪些技术背景去了解呢?
什么是消息(Messaging)?
消息系统是一种实现近实时异步计算的流行方案。消息产生时可以被放入一个消息队列(ActiveMQ,RabbitMQ)、发布-订阅系统(Kestrel...
分类:
其他好文 时间:
2014-10-27 23:10:44
阅读次数:
349
1.Futrue
public interface Future //Future 表示异步计算的结果ExecutorService threadPool = Executors.newSingleThreadExecutor();
Future future = threadPool.submit(new Callable() {
public String call() throws Ex...
分类:
编程语言 时间:
2014-10-26 15:40:38
阅读次数:
159
异步计算分布式消息队列先进先出机制的队列,监听在服务器某个端口上的服务,它可以维护并管理很多消息队列,应用程序可以通过网络快速访问它,为某个队列追加消息或者从某个队列领取消息。并行计算Map/Reduce是一种分布式并行计算的开发框架,任何计算任务都可以经历从拆分到..
分类:
其他好文 时间:
2014-10-01 01:29:30
阅读次数:
221
ExecutorService接口使用submit方法会返回一个Future对象,Future表示异步计算的结果。它提供了检查计算是否完成的方法,以等待计算的完成,并获取计算的结果。计算完成后只能使用get方法来获取结果,如有必要,计算完成前可以阻塞此方法。取消则由cancel方法来执行。还提供了其他方法,以确定任务是正常完成还是被取消了。一旦计算完成,就不能再取消计算。如果为了可取消性而使用Fu...
分类:
其他好文 时间:
2014-07-02 07:17:30
阅读次数:
201