博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java 多线程之关于Runnable接口 与 Callable接口
阅读量:3959 次
发布时间:2019-05-24

本文共 767 字,大约阅读时间需要 2 分钟。

Java 多线程之关于Runnable接口 与 Callable接口

Runnable与 Callable关于接口定义

//Runnable接口 public interface Runnable {
public abstract void run();}//Callable接口public interface Callable
{
V call() throws Exception; }

Callable使用步骤

  1. 编写类实现Callable接口 , 实现call方法
class XXX implements Callable
{
@Override public
call() throws Exception {
return T; }}
  1. 创建FutureTask对象 , 并传入第一步编写的Callable类对象
FutureTask
future = new FutureTask<>(callable);
  1. 通过Thread,启动线程
new Thread(future).start();

Runnable 与 Callable的相同点

  • 都是接口
  • 都可以编写多线程程序
  • 都采用Thread.start()启动线程

Runnable 与 Callable的不同点

  • Runnable没有返回值;Callable可以返回执行结果
  • Callable接口的call()允许抛出异常;Runnable的run()不能抛出
    Callable获取返回值
    Callalble接口支持返回执行结果,需要调用FutureTask.get()得到,此方法会阻塞主进程的继续往下执行,如果不调用不会阻塞。

转载地址:http://ibozi.baihongyu.com/

你可能感兴趣的文章
Android 下 JNI 开发
查看>>
Mysql索引
查看>>
OGNL投影查询
查看>>
OGNL投影查询
查看>>
OGNL投影查询
查看>>
Redis之RDB和AOF持久化
查看>>
Redis之RDB和AOF持久化
查看>>
Servlet3.0
查看>>
Servlet3.0
查看>>
Servlet3.0
查看>>
SQL 语句的解析过程
查看>>
SQL 语句的解析过程
查看>>
SQL 语句的解析过程
查看>>
Java类文件结构
查看>>
Java类文件结构
查看>>
使用注解生成代码
查看>>
使用注解生成代码
查看>>
使用注解生成代码
查看>>
奇妙的JavaScript函数
查看>>
奇妙的JavaScript函数
查看>>