news 2025/12/19 13:49:12

Java 多线程编程 - 线程池 awaitTermination 方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java 多线程编程 - 线程池 awaitTermination 方法

awaitTermination 方法

1、基本介绍
booleanawaitTermination(longtimeout,TimeUnitunit)throwsInterruptedException;
参数类型说明
timeoutlong等待时间
unitTimeUnit时间单位
返回值说明
true线程池在超时前已终止
false超时后线程池仍未终止
  1. awaitTermination 是 Java 线程池中用于等待任务执行完成的方法

  2. awaitTermination 方法会阻塞调用线程,直到所有任务都执行完成、发生超时、调用线程被中断

2、演示
  1. 线程池执行任务,任务耗时 5 秒,主线程 2 秒后,调用 awaitTermination 方法,等待 10 秒,线程池在超时前已终止
ExecutorServiceexecutorService=Executors.newSingleThreadExecutor();executorService.execute(()->{System.out.println("任务开始执行");try{Thread.sleep(5*1000);}catch(InterruptedExceptione){e.printStackTrace();}System.out.println("任务执行完成");});try{Thread.sleep(2*1000);}catch(InterruptedExceptione){e.printStackTrace();}executorService.shutdown();try{booleanresult=executorService.awaitTermination(10,TimeUnit.SECONDS);if(result){System.out.println("所有任务都已完成");}else{System.out.println("超时,任务未完成");}}catch(InterruptedExceptione){thrownewRuntimeException(e);}
# 输出结果 任务开始执行 任务执行完成 所有任务都已完成
  1. 线程池执行任务,任务耗时 10 秒,主线程 2 秒后,调用 awaitTermination 方法,等待 5 秒,线程池在超时后仍未终止
ExecutorServiceexecutorService=Executors.newSingleThreadExecutor();executorService.execute(()->{System.out.println("任务开始执行");try{Thread.sleep(10*1000);}catch(InterruptedExceptione){e.printStackTrace();}System.out.println("任务执行完成");});try{Thread.sleep(2*1000);}catch(InterruptedExceptione){e.printStackTrace();}executorService.shutdown();try{booleanresult=executorService.awaitTermination(5,TimeUnit.SECONDS);if(result){System.out.println("所有任务都已完成");}else{System.out.println("超时,任务未完成");}}catch(InterruptedExceptione){thrownewRuntimeException(e);}
# 输出结果 任务开始执行 超时,任务未完成 任务执行完成
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/19 13:48:38

FaceFusion人脸替换在广告创意中的应用场景

FaceFusion人脸替换在广告创意中的应用场景 在一条跨国品牌的电视广告中,中国观众看到的是由本地明星代言的产品介绍,而法国观众看到的却是另一位面孔熟悉的本土代言人——但两段视频的动作、场景、语调几乎完全一致。这并非来自不同拍摄团队的精心复刻&…

作者头像 李华
网站建设 2025/12/19 13:46:43

FaceFusion能否处理低质量监控画面?去噪增强双加持

FaceFusion能否处理低质量监控画面?去噪增强双加持在城市安防系统的日常运行中,一个令人头疼的问题反复浮现:明明摄像头拍到了嫌疑人,但画面模糊、噪点多、分辨率极低,人脸几乎无法辨认。这种情况下,传统人…

作者头像 李华
网站建设 2025/12/19 13:46:25

FaceFusion能否处理红外夜视画面?低光环境适配

FaceFusion能否处理红外夜视画面?低光环境适配在城市安防系统中,一个常见的尴尬场景是:监控摄像头在夜间自动切换至红外模式后,原本精准的人脸识别瞬间失效——算法要么完全漏检人脸,要么将热成像中的“发亮额头”误判…

作者头像 李华
网站建设 2025/12/19 13:45:27

FaceFusion镜像搭配大模型Token服务,开启AI创作新时代

FaceFusion镜像搭配大模型Token服务,开启AI创作新时代 在短视频与虚拟内容爆发式增长的今天,创作者对“以假乱真”的视觉效果需求日益高涨。无论是为老电影修复演员形象、让历史人物“开口说话”,还是打造个性化的数字分身,人脸替…

作者头像 李华
网站建设 2025/12/19 13:44:21

FaceFusion在教育领域的创新应用设想

FaceFusion在教育领域的创新应用设想 你有没有想过,一节由“本地化数字教师”主讲的英语课,虽然授课内容来自千里之外的名校教授,但站在屏幕前的老师却长着一张符合学生文化背景的脸?他的表情自然、口型同步,甚至能根据…

作者头像 李华
网站建设 2025/12/19 13:43:57

FaceFusion可用于教育场景?比如历史人物重现课堂

FaceFusion 能否让历史人物“走进”课堂?在一所普通中学的历史课上,讲台前的屏幕突然亮起。画面中,一位身着清代官服、目光坚毅的男子缓缓开口:“吾乃林则徐。道光十九年,我在虎门销烟,誓与鸦片共存亡……”…

作者头像 李华