Runnable , Callable 区别
来源:互联网 发布:淘宝助理官方下载 免费 编辑:程序博客网 时间:2024/06/07 10:17
编写多线程程序是为了实现多任务的并发执行,从而能够更好地与用户交互。一般有三种方法,Thread,Runnable,Callable.
Runnable和Callable的区别是,
(1)Callable规定的方法是call(),Runnable规定的方法是run().
(2)Callable的任务执行后可返回值,而Runnable的任务是不能返回值得
(3)call方法可以抛出异常,run方法不可以
(4)运行Callable任务可以拿到一个Future对象,表示异步计算的结果。它提供了检查计算是否完成的方法,以等待计算的完成,并检索计算的结果。通过Future对象可以了解任务执行情况,可取消任务的执行,还可获取执行结果。
package com.example.thread;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Future;public class RunableTest {public static void main(String[] args) {int taskSize = 3;ExecutorService pool = Executors.newFixedThreadPool(taskSize);Runnable run = new Runnable() {@Overridepublic void run() {for(int i=0; i<10; i++){System.out.println(i);}}};//方法一://调用submit 会执行Runnable 的run方法Future<?> f = pool.submit(run);//无返回值if(f.isDone()){//判断是否执行完毕pool.shutdown();}//方法二:new Thread(run).run();}}
0 0
- callable Runnable 区别
- Callable与Runnable区别
- Runnable , Callable 区别
- Callable和Runnable的区别
- Runnable和Callable的区别
- Runnable和Callable的区别
- Runnable、Callable、Future接口区别
- Runnable和Callable的区别:
- java中Runnable与Callable区别
- Callable接口与Runnable接口区别
- Callable接口与Runnable接口的区别
- Callable,Runnable的区别及用法
- java多线程—Runnable、Thread、Callable区别
- Runnable和Callable接口的区别
- 浅谈Runnable与Callable的区别
- Runnable和Callable的区别和用法
- Runnable&Callable
- Java中的Runnable、Callable、Future、FutureTask的区别与示例
- 中缀表达式求值
- STM32学习笔记3——怎样将整型变量转换为字符变量 然后串口 或者LCD发送出来(STM32) 以及sprintf的用法
- andriod 安装apk报错:[INSTALL_PARSE_FAILED_NO_CERTIFICATES]
- configure: WARNING: sys/capability.h: accepted by the compiler, rejected by the preprocessor!
- Java-Stack实现中序表达式求值
- Runnable , Callable 区别
- 【Bug日常】 Admin(表名)is not mapped
- 算法训练 表达式计算
- 40. Combination Sum II Medium
- 2017年4月21日 计算机技术动态
- postgre sql 学习
- Mac上安装MySQL后在终端连接不上数据库Command not found
- HDOJ--2037 今年暑假不AC
- C# 正则表达式