FutureTask

FutureTaskFutureTask是一项可取消的异步计算。该类提供了Futurelei

大家好,又见面了,我是你们的朋友全栈君。

FutureTask是一项可取消的异步计算。该类提供了Future类的实现,主要方法包括:开始和取消一项计算,查询计算是否完成,获取计算结果。如果计算未完成,get()方法会阻塞。一旦计算结束,该计算不会被重启或取消。

FutureTask包裹了一个Callable对象。由于FutureTask实现了Runnable,一个FutureTask对象可以被提交给一个Executor对象执行。

除了作为一个单独类提供服务之外,该类提供了protected方法,这些方法可能在生成定制的任务类的时候有用。

内部定义了一个Sync类和一个Sync类的实例,sync。(在构造函数中实例化)来实现FutureTask的同步控制。

 

一般FutureTask多用于耗时的计算,主线程可以在完成自己的任务后,再去获取结果。

这个特点需要注意,这是它和普通java方法的区别之处,普通java方法会阻塞java主线程。而它可以继续干别的活,干完后,可以获取结果。如果仍未完成,主线程将阻塞直到结果取到为止。当然我们可以根据业务情况,通过轮巡查看计算的状态决定主线程的下一步操作。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147685.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JAVA设计模式——适配器模式

    JAVA设计模式——适配器模式适配器模式是一种结构型设计模式。适配器模式的思想是:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。用电器来打个比喻:有一个电器的插头是三脚的,而现有的插座是两孔的,要使插头插上插座,我们需要一个插头转换器,这个转换器即是适配器。适配器模式涉及3个角色:源(Adaptee):需要被适配的对象或类型,相当于插头。适配器(Ad

    2022年7月25日
    10
  • js中ajax写法_ajax原生写法

    js中ajax写法_ajax原生写法//JavaScriptDocumentvarXHR;//定义一个全局对象functioncreateXHR(){//首先我们得创建一个XMLHttpRequest对象if(window.ActiveXObject){//IE的低版本系类XHR=newActiveXObject(‘Microsoft.XMLHTTP’);//之前IE垄断了整个浏览器市场,没遵循W3C标准…

    2022年9月30日
    6
  • 计算机实现原理专题–二进制减法器(二)

    计算机实现原理专题–二进制减法器(二)在计算机实现原理专题–二进制减法器(一)中说明了基本原理,现准备说明如何来实现。首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式:由于每次做减法时,我们可以人为的判断被减数和减数的大小,所以当被减数大于减数时中间结果一定会上溢也就是多出1位,因此中…

    2025年11月23日
    1
  • Spring Boot 核心编程思想-第二部分-读书笔记

    怕什么真理无穷进一步有近一步的欢喜说明本文是Spring Boot核心编程思想记录的笔记,书籍地址:Spring Boot编程思想(核心篇):这篇文档会记录这本我的一些读书的思考,内容可能…

    2022年3月1日
    44
  • 科谱,如何单机环境下合理的备份mssql2008数据库

    科谱,如何单机环境下合理的备份mssql2008数据库开发人员学win服务器的简单运维之数据库自动备份。写博客很累,请轻喷…

    2022年7月2日
    28
  • 如何用cmd查看端口占用情况「建议收藏」

    如何用cmd查看端口占用情况「建议收藏」转载于:https://www.cnblogs.com/HuiLove/p/3921945.html

    2022年5月12日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号