原文:JAVA 笔记 Callable 与 FutureTask:有返回值的多线程

常用的Thread类在run方法执行完之后是没有返回值的,要实现子线程完成任务后返回值给主线程需要借助第三方转存。Callable接口则提供了一种有返回值的多线程实现方法。下面以一个简单的地主 监工和长工的例子展示这种接口的用法。 长工类: 长工类实现了Callable接口,线程运行完成后返回一个Integer值。 importjava.util.concurrent.Callable publ ...

2012-09-26 16:44 0 9765 推荐指数:

查看详情

Java多线程-Callable的Future返回值的使用

一般使用线程池执行任务都是调用的execute方法,这个方法定义在Executor接口中: 这个方法是没有返回值的,而且只接受Runnable。 那么像得到线程返回值怎嘛办呢? 在ExecutorService接口中能找到这个方法: 这个方法接收两种参数 ...

Mon Oct 15 05:19:00 CST 2018 1 39823
Java多线程返回值Callable接口

Java多线程返回值Callable接口 在面试的时候,有时候是不是会遇到面试会问你,Java中实现多线程的方式有几种?你知道吗?你知道Java中有可以返回值线程吗?在具体的用法你知道吗?如果两个线程同时来调用同一个计算对象,计算对象的call方法会被调用几次你知道吗?如果这些你知道 ...

Sat May 16 21:03:00 CST 2020 2 640
JAVA多线程高并发学习笔记(三)——Callable、Future和FutureTask

为什么要是用Callable和Future Runnable的局限性 Executor采用Runnable作为基本的表达形式,虽然Runnable的run方法能够写入日志,写入文件,写入数据库等操作,但是它不能返回一个,或者抛出一个受检查的异常,有些需要返回值的需求就不能满足了。 能够取消 ...

Tue Sep 19 16:12:00 CST 2017 0 3708
Java多线程Callable,Future,FutureTask

一、Future Future和Callable基本是成对出现的,Callable负责产生结果,Future负责获取结果。 1、Callable接口类似于Runnable,只是Runnable没有返回值。 2、Callable任务除了返回正常结果之外,如果发生 ...

Thu Sep 11 22:55:00 CST 2014 1 2547
Java线程中带有返回值线程Callable

Java5之前,线程是没有返回值的,常常为了“有”返回值,破费周折,而且代码很不好写。或者干脆绕过这道坎,走别的路了。现在Java终于有可返回值的任务(也可以叫做线程)了。 可返回值的任务必须实现Callable接口,类似的,无返回值的任务必须Runnable接口。执行Callable任务后 ...

Sun May 17 22:01:00 CST 2015 0 4744
Java多线程——<四>让线程返回值

一、概述   到目前为止,我们已经能够声明并使一个线程任务运行起来了。但是遇到一个问题:现在定义的任务都没有任何返回值,那么加入我们希望一个任务运行结束后告诉我一个结果,该结果表名任务执行成功或失败,此时该怎么办呢?   答案是使用Callable。之前定义的任务都直接实现了Runnable ...

Thu Aug 06 17:33:00 CST 2015 0 39706
java使用Callable创建又返回值线程

并发编程使我们可以将程序分为很多个分离的,相互之间独立的任务,通过使用多线程的机制,将每个任务都会有一个执行线程来单独的驱动,一个线程是 进程中一个单一顺序控制流,一个进程可以拥有多个线程,也就相当于有多个单独的顺序控制流,所以你的进程当中每个线程看起来都是有单独的cpu一样,底层实现就是切分 ...

Mon Nov 20 23:22:00 CST 2017 1 2199
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM