CompletableFuture
一、一个示例回顾Future
一些业务场景我们需要使用多线程异步执行任务,加快任务执行速度。JDK5新增了Future接口,用于描述一个异步计算的结果。虽然Future以及相关使用方法提供了异步执行任务的能力,但是对于结果的获取却是很不方便,我们必须使用Future.get()的方式阻塞调用线程,或者使用轮询方式判断Future.isDone()任务是否结束,再获取结果。
这两种处理方式都不是很优雅,相关代码如下:
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;public class Demo {public static void main(String[] args) throws ExecutionException, InterruptedException{ExecutorService executorService = Executors.newFixedThreadPool(5);Future<String> future = executorService.submit(() -> {Thread.sleep(2000);return "hello";});System.out.println(future.get());System.out.println("end");}
}相关文章:
CompletableFuture
一、一个示例回顾Future 一些业务场景我们需要使用多线程异步执行任务,加快任务执行速度。JDK5新增了Future接口,用于描述一个异步计算的结果。虽然Future以及相关使用方法提供了异步执行任务的能力,但是对于结果的获取却是很不方便,我们必须使用Future.get()的方式阻塞调…...
面试不到10分钟就被赶出来了,问的实在是太变态了...
干了两年外包,本来想出来正儿八经找个互联网公司上班,没想到算法死在另一家厂子。 自从加入这家外包公司,每天都在加班,钱倒是给的不少,所以也就忍了。没想到11月一纸通知,所有人不许加班,薪资…...
【C++】类与对象 (四)初始化列表 static成员 友元 内部类 匿名对象 拷贝对象时的一些编译器优化
前言 本章就是我们C中类与对象的终章了,不过本章的难度不大,都是类中一些边边角角的知识,记忆理解就行了,相信经过这么长时间的学习类与对象,你对面向对象也有了更加深的理解,最后我们学习完边边角角的一些…...
04:进阶篇 - 编译 CTK
作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 在使用 CTK 之前,首先要进行编译。但要成功编译它,并不是一件很容易的事,这不仅取决于平台、Qt 的版本,也取决于编译器,以及所使用的 IDE。 平台(Linux、Windows)Qt 版本(4.x、5.x、6.x)编译器(MS…...
SQL73 返回所有价格在 3美元到 6美元之间的产品的名称和价格
描述有表Productsprod_idprod_nameprod_pricea0011egg3a0019sockets4b0019coffee15【问题】编写 SQL 语句,返回所有价格在 3美元到 6美元之间的产品的名称(prod_name)和价格(prod_price),使用 AND操作符&am…...
【Linux 多线程互斥】如何保证锁的原子性(互斥的原理)
临界资源:可以被多个执行流(线程或者叫轻量级进程)同是访问的(多个执行流共享的,比如:全局、堆等等);临界区:访问这些临界资源的代码;原子性:没有中间态&…...
Android 实现沉浸式全屏
前言 本文总结 Android 实现沉浸式全屏的实现方式。 实现沉浸式全屏 在一些需要全屏显示的场景下,比如玩游戏、看横屏视频的时候,内容全屏,占满窗口的体验会让用户更加沉浸到对内容的消费中,带来好的用户体验。 沉浸式显示具体来说就是如状态栏和导航栏部分的显示效果调…...
数据分析与SAS学习笔记6
数据集整理: 目的:对数据集中的数据进行预处理,使数据更适合统计分析过程对数据格式的要求; 常见整理要求: 1)建立新的变量,衍生变量,删除某些原变量; 2)…...
自动化完成1000个用户的登录并获取token并生成tokens.txt文件
自动化完成1000个用户的登录并获取token并生成tokens.txt文件 写作背景 在我学习使用redis实现秒杀功能的过程中,在编写完秒杀代码后,需要使用Jmeter实际测试1000个用户进行秒杀,由于秒杀功能需要在用户登录完成后才能实现,用户是…...
2023年全国最新安全员精选真题及答案1
百分百题库提供安全员考试试题、建筑安全员考试预测题、建筑安全员ABC考试真题、安全员证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 11.(单选题)在起重作业中,()…...
NoMachine 输入用户名密码后 闪断 解决办法
大家好,我是虎哥,最近工作忙,好长时间没有继续套件的深度学习,今天周六,难得有空,泡好茶,打开电脑,链接套件桌面,得,出问题了,一个很奇怪的问题&a…...
WebADI - 参数的使用
* 本文仅供交流分享,不作为专业指导 最近研究了一下WEBADI文档下载的参数,由于网上这块资料较少,所以专意分享下我的笔记。 准备 集成器:BHSC_EMP_ADI 表值集:BHSC_DEPT_LOV(值:dname&#x…...
【OJ】两个圆
📚Description: 直角坐标系内现有两个半径相等的圆,问两圆的位置关系。 位置关系有:重合,相切,相离,相交; 若两圆相交,需要求出两圆的重叠面积。 ⏳Input: 输入包含多组数据&a…...
一文读懂澳洲医疗:白菜价的药物怎么领?
众所周知,福利优厚的澳洲,在医疗系统上有着令全世界人民都羡慕的超高福利。 几十万的天价药,在澳洲,白菜价就能轻松到手。 国内70万元一针的“诺西那生钠注射液”(目前中国国内唯一治疗脊髓性肌萎缩症的进口精准靶向药…...
scrum看板视图切换时间线视图做项目管理
企业需要开发一个项目,可以制作时间线进行管理,以便参与者和管理者了解项目的时间进度。项目进行到哪一步,参与者有哪些,责任人是谁,这些都可以通过时间线进行展示。「时间线视图」是一种比甘特图更轻量、更实用的工具…...
10、MySQL查询优化
MySQL查询优化 1.MySQL查询优化技术2.子查询优化2.1 优化器自动优化2.2 优化措施:子查询合并2.2 优化措施:子查询上拉技术3.外连接消除4.生产环境不使用join联表查询5.group by分组优化5.1 group by执行流程5.2 为什么group by要创建临时表6.order by排序优化7.MySQL性能抖动…...
C++模板(一)
文章目录C模板(一)1. 泛型编程2. 函数模板2.1 函数模板格式2.2 模板原理2.3 模板实例化2.4 模板参数匹配原则3. 类模板3.1 类模板格式3.2 背景3.3 类模板的实例化C模板(一) 1. 泛型编程 前面我们学到了函数重载这个特性…...
【TypeScript】TypeScript的基础类型(string,number,boolean,void,null,undefined):
文章目录一、安装【1】安装npm install typescript -g【2】基础类型:Boolean、Number、String、null、undefined 以及 ES6 的 Symbol 和 ES10 的 BigInt二、字符串类型(string)三、数字类型(number)四、布尔类型(boolean)五、空值类型(void)六、null和undefined类型…...
【C语言】 详谈指针
☃️内容专栏:【C语言】初阶部分 ☃️本文概括:继初识C语言,对C语言指针初阶部分进行归纳与总结。 ☃️本文作者:花香碟自来_ ☃️发布时间:2023.2.17 目录 一、指针和指针类型 1.1 指针 1.2 指针类型 其一&#x…...
内网渗透(三十八)之横向移动篇-pass the key 密钥传递攻击(PTK)横向攻击
系列文章第一章节之基础知识篇 内网渗透(一)之基础知识-内网渗透介绍和概述 内网渗透(二)之基础知识-工作组介绍 内网渗透(三)之基础知识-域环境的介绍和优点 内网渗透(四)之基础知识-搭建域环境 内网渗透(五)之基础知识-Active Directory活动目录介绍和使用 内网渗透(六)之基…...
Phi-3-mini-128k-instruct与STM32开发:生成嵌入式C代码与调试逻辑
Phi-3-mini-128k-instruct与STM32开发:生成嵌入式C代码与调试逻辑 1. 引言 如果你玩过STM32,尤其是像STM32F103C8T6这种经典的“蓝色药丸”最小系统板,肯定对下面这些场景不陌生:为了点亮一个LED,翻遍数据手册&#…...
Ubuntu常用的命令
ls -l # 输出当前文件夹下的所有文件的权限大小信息 ls -l 文件名 # 输出当前文件的权限大小信息 du -sh # 查看文件夹下所有文件的大小总和 df -h # 查看当前文件系统各分区的大小 hdparm -Tt /dev/sda1 # 查看分区磁盘的速度 ls -l | grep "^-" | wc -l # 当前目…...
遥感智能体模块全景解析:从任务拆解到工作流编排
1. 遥感智能体的核心架构设计 第一次接触遥感智能体(RS-Agent)这个概念时,很多人会感到困惑:它和传统遥感处理软件有什么区别?简单来说,RS-Agent更像是一个"会思考的助手"。我参与过几个遥感智能…...
鸿蒙SpeechKit离线语音识别避坑指南:从PCM格式到权限配置,一次搞定
鸿蒙SpeechKit离线语音识别实战避坑指南 1. 音频格式的致命陷阱 PCM格式是鸿蒙SpeechKit离线语音识别的唯一选择,但开发者常犯的错误远不止文件类型这么简单。我曾见过一个团队花费三天时间排查识别率低的问题,最终发现是采样深度设置错误——这个细节在…...
别再让收款语音卡顿!UniApp + WebSocket 实现流畅支付播报的完整避坑指南
UniApp WebSocket 支付语音播报实战:从性能优化到高并发处理 在移动支付场景中,实时语音播报不仅是用户体验的关键环节,更是商户经营效率的重要保障。想象这样的场景:高峰时段,收银台前排队等待的顾客,收银…...
华为MateBook D14安装Ubuntu16避坑指南:WiFi/蓝牙/触控板驱动一键搞定
华为MateBook D14安装Ubuntu 16.04驱动优化全攻略 华为MateBook D14作为一款高性价比轻薄本,在安装Ubuntu 16.04时可能会遇到WiFi、蓝牙和触控板驱动不兼容的问题。这主要源于硬件迭代速度远超Linux内核更新周期——你的笔记本搭载了新一代无线网卡和输入设备&#…...
ai结对编程实践:如何利用kimi在快马平台智能辅助完成用户认证系统开发
AI结对编程实践:如何利用Kimi在快马平台智能辅助完成用户认证系统开发 最近在开发一个需要用户认证功能的项目,后端用Node.js Express,前端用Vue。作为一个独立开发者,面对这种前后端都要兼顾的情况,我决定尝试用Kimi…...
陀螺匠企业助手-产品
1. 功能说明维护出售产品的基本信息数据,支持在添加商机/合同中进行选择。2. 进入产品页面路径:客户>产品管理>产品3. 新增产品功能说明:维护产品信息,添加完成的产品信息,可以在添加商机/合同中进行选择。新增产…...
阿联酋人工智能大学:AI能在战争迷雾中做出理性判断吗?
这项由阿联酋穆罕默德本扎耶德人工智能大学和美国马里兰大学共同完成的研究发表于2026年3月,论文编号为arXiv:2603.16642v1。有兴趣深入了解的读者可以通过该编号查询完整论文。在人类历史上,预测战争走向一直是个极其困难的任务。就像我们很难在暴风雨中…...
LuckyLilliaBot QQ群管理自动化实战指南:从零搭建高效智能管理方案
LuckyLilliaBot QQ群管理自动化实战指南:从零搭建高效智能管理方案 【免费下载链接】LuckyLilliaBot NTQQ的OneBot API插件 项目地址: https://gitcode.com/gh_mirrors/li/LuckyLilliaBot LuckyLilliaBot是一款基于NTQQ客户端与OneBot11协议的QQ机器人开发框…...
