package Juc;import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;
import java.util.concurrent.TimeUnit;
/*** Callable与runable接口区别:* runable的run方法出错会直接抛异常,没有返回值* Callable有返回值,不抛异常可以try catch**/
class MyThread implements Callable<Integer>{@Overridepublic Integer call() throws Exception {//?System.out.println("come in Callable");try{TimeUnit.SECONDS.sleep(5);}catch (Exception e){e.printStackTrace();}return 1024;//?}}public class CallableDemo {public static void main(String[] args) throws Exception, ExecutionException {FutureTask<Integer> futureTask = new FutureTask<>(new MyThread());//FutureTask<Integer> futureTask2 = new FutureTask<>(new MyThread());只执行二次Thread t1= new Thread(futureTask,"aa");Thread t2= new Thread(futureTask,"bb");  //只执行一次t1.start();t2.start();System.out.println(Thread.currentThread().getName()+"\t ");while(!futureTask.isDone()){}//System.out.println("***************result :"+futureTask.get());main阻塞System.out.println(Thread.currentThread().getName()+"\t ");System.out.println("***************result :"+futureTask.get());}}

Callable接口与runable和Thread类相关推荐

  1. Callable接口、Runable接口、Future接口

    转自:https://www.cnblogs.com/felixzh/p/6044371.html 参考:https://blog.csdn.net/qq_36761831/article/detai ...

  2. java基础 通过继承Thread类和实现Runnable接口创建线程

    java 创建线程 Java中,线程也是一种对象,但不是任何对象都可以成为线程. 只有实现了Runnable接口或继承了Thread类的对象才能成为线程. 继承Thread类 //格式: class ...

  3. java同步锁售票_Java基础学习笔记: 多线程,线程池,同步锁(Lock,synchronized )(Thread类,ExecutorService ,Future类)(卖火车票案例)...

    学习多线程之前,我们先要了解几个关于多线程有关的概念. 进程:进程指正在运行的程序.确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能. 线程:线程是 ...

  4. Java用Callable接口创建线程

     一.概述  使用Callable接口创建线程能够返回数据.与Runnable接口创建线程的方式有点类似,也是需要通过Thread类来创建线程.由于Thread类的构造函数中没有Callable接口, ...

  5. 【Android 异步操作】FutureTask 分析 ( Future 接口解析 | Runnable 接口解析 | Callable 接口解析 )

    文章目录 一.Future 接口 1.Future 接口简介 2.取消任务方法 3.Future 接口源码注释 二.Callable 接口 三.Runnable 接口 上一篇博客 [Android 异 ...

  6. 【JUC并发编程07】Callable接口

    文章目录 7 Callable接口 7.1 Callable接口创建线程 7.2 FutureTask 7 Callable接口 创建线程的多种方式: 继承Thread类 实现Runnable接口 C ...

  7. 从源码角度详解Java的Callable接口

    摘要:本文从源码角度深入解析Callable接口. 本文分享自华为云社区<深入解析Callable接口>,作者: 冰 河 . 本文纯干货,从源码角度深入解析Callable接口,希望大家踏 ...

  8. 一个Callable接口能有多少知识点?在裁员的大背景下,我仍然吊打了大厂面试官

    大家好,我是冰河~~ 并发编程一直是程序员们比较头疼的,如何编写正确的并发程序相比其他程序来说,是一件比较困难的事情,并发编程中出现的 Bug 往往也是特别诡异的. 之所以说并发编程出现的 Bug 比 ...

  9. Callable 接口

    Callable 接口 是 java.util.concurrent.下的一个泛型接口 , 只有一个call () 方法 , 它是有返回值的 ,  我们可以获取多线程执行的结果 , 使用 Callab ...

最新文章

  1. [转]30个HTML5学习资源
  2. 例子 客户端_服务端也是可以主动向客户端推送数据的--WebSocket
  3. Flex与.NET互操作(八):使用FluorineFx网关实现远程访问
  4. 基础 - 结构体大小计算
  5. 2020年编程现状:Python将成为第一大编程语言,中国开源涨势最猛
  6. python膨胀卷积_python里有没有轻量级的卷积网络库,不需要训练,只想快速前向计算?...
  7. Electron的学习笔记
  8. 查询优化器内核剖析第六篇:谈谈Join的顺序问题,纠正江湖偏方
  9. 2014年十大云计算发展趋势分析及预测
  10. 规避Variable used in lambda expression should be final or effectively final而引发了方法参数值拷贝的问题
  11. 使用iTunes下载旧版本的IPA文件
  12. 通过身份证号码得出性别和年龄
  13. 数据科学家大减价:一小时只收30美元
  14. AT32F435/437的如何选择选择代码启动地址
  15. JAVA将文字转语音文件
  16. 怎样判断两个ip地址是不是在同一个网段中?
  17. 自制电脑usb红外遥控键盘
  18. 如何正确地提出热处理工艺
  19. Window下的2D游戏-贴图技术
  20. openwrt网络唤醒计算机,蜗牛星际 82583V网卡在win10中开启网络唤醒开机的方法

热门文章

  1. is 32-bit instead of 64-bit 亲测可用
  2. 框架:NHibernate学习目录
  3. redis基础学习(一)— 配置项
  4. 在SUM()行数中使用SQL变量导致不可预测结果
  5. zoj1134 Strategic Game(DP/图论)
  6. javascript原生代码取单选框的值
  7. 前端文档汇总(觉得对您有用的话,别忘了给点个赞哦 ^_^ !)
  8. 初始化中断按键(2440)
  9. 网站访客 简易日志记录
  10. EF – 4.CRUD与事务