JUC - FutureTask(Runnable + Future)

简介: JUC - FutureTask(Runnable + Future)
package com.mmall.concurrency.example.aqs;
import lombok.extern.slf4j.Slf4j;
import java.util.concurrent.Callable;
import java.util.concurrent.FutureTask;
@Slf4j
public class FutureTaskExample {
    public static void main(String[] args) throws Exception {
        FutureTask<String> futureTask = new FutureTask<String>(new Callable<String>() {
            @Override
            public String call() throws Exception {
                log.info("do something in callable");
                Thread.sleep(5000);
                return "Done";
            }
        });
        new Thread(futureTask).start();
        log.info("do something in main");
        Thread.sleep(1000);
        String result = futureTask.get();
        log.info("result:{}", result);
    }
}
  • FutureTask = Runnable + Future,比 Future 实现 Callable 接口,写法上简单许多【推荐】。
目录
相关文章
|
机器学习/深度学习 编解码 算法
Google Earth Engine APP(GEE)——加拿大陆地生态系统中的土壤碳储量数据集
Google Earth Engine APP(GEE)——加拿大陆地生态系统中的土壤碳储量数据集
311 0
|
缓存 Java 编译器
Java并发编程中的锁优化策略
【5月更文挑战第27天】在Java多线程开发中,锁是一种常用的同步机制,用于保证共享资源的访问顺序和一致性。然而,不当的锁使用会导致性能瓶颈甚至死锁。本文将探讨Java并发编程中的锁优化策略,包括锁粗化、锁消除、锁细化以及读写锁的使用,旨在帮助开发者提高程序的性能和可靠性。
|
SQL Java 数据库连接
MyBatis与MyBatis-Plus的区别?
MyBatis与MyBatis-Plus的区别?
2236 0
|
关系型数据库 Java 分布式数据库
PolarDB for PostgreSQL参数问题之参数删除失败如何解决
PolarDB for PostgreSQL是基于PostgreSQL开发的一款云原生关系型数据库服务,它提供了高性能、高可用性和弹性扩展的特性;本合集将围绕PolarDB(pg)的部署、管理和优化提供指导,以及常见问题的排查和解决办法。
|
Kubernetes 负载均衡 Cloud Native
GitHub一周飙升百星!谷歌独家发布Kubernetes入门指南名声大噪
如果你需要进行大规模的容器编排,那么Kubernetes (K8s) 可以说是最佳选择。谷歌推出的开源容器编排系统备受好评,得到了很好的支持,而且发展非常迅速。kubernetes,是一个全新的基于容器技术的分布式架构领先方案,是谷歌严格保密十几年的秘密武器----Borg系统的一个开源版本,于2014年9月发布第一个版本,2015年7月发布第一个正式版本。
|
C语言
码蹄杯语言基础:循环结构(C语言)
码蹄杯语言基础:循环结构(C语言)
192 1
|
机器学习/深度学习 算法 数据挖掘
logistic模型原理与推导过程分析(1)
给定一些数据集合,他们分别属于两个不同的类别。例如对于广告数据来说,是典型的二分类问题,一般将被点击的数据称为正样本,没被点击的数据称为负样本。现在我们要找到一个线性分类器,将这些数据分为两类。用X表示样本数据,Y表示样本类别(例如1与-1,或者1与0)。我们线性分类器的目的,就是找到一个超平面将两类样本分开。
1014 0
|
数据库 索引
索引是越多越好嘛? 什么样的字段需要建索引
索引的作用是加快数据库的查询速度,但并不是索引越多越好。过多的索引会增加数据库的存储空间和维护成本,并且在写操作时可能会降低性能。
347 0
|
存储
CousumeQueue中tag的作用
问题的提出 存在就是有意义的,那么ConsumeQueue中存消息tag的hashcode是什么目的呢?
153 0
CousumeQueue中tag的作用
|
物联网 开发者
《阿里云开发者大会--IOT专场--产品经理见面会》电子版地址
阿里云开发者大会--IOT专场--产品经理见面会
152 0
《阿里云开发者大会--IOT专场--产品经理见面会》电子版地址