当前位置: 首页 > news >正文

第三百一十五节 Java线程教程 - Java线程休眠

Java线程教程 - Java线程休眠

Thread类包含一个静态sleep()方法,它使线程在指定的持续时间内休眠。

Thread.sleep()方法接受超时作为参数。

我们可以指定超时的毫秒数,或毫秒和纳秒。执行此方法的线程将休眠指定的时间。

操作系统调度程序不调度睡眠线程以接收CPU时间。

如果线程在进入休眠之前拥有锁的所有权,则它在休眠期间继续保持这些锁。

sleep()方法抛出java.lang.InterruptedException,你的代码必须处理它。

例子

下面的代码演示了使用Thread.sleep()方法。

public class Main {public static void main(String[] args) {try {System.out.println("sleep for 5  seconds.");Thread.sleep(5000);// The "main" thread will sleepSystem.out.println("woke up.");} catch (InterruptedException e) {System.out.println("interrupted.");}System.out.println("done.");}
}

上面的代码生成以下结果。

例2

java.util.concurrent包中的TimeUnit枚举表示各种单位(如毫秒,秒,分钟,小时,天等)的时间测量值。

它有sleep()方法,其工作方式与Thread.sleep()相同。

我们可以使用TimeUnit的sleep()方法来避免持续时间转换:

TimeUnit.SECONDS.sleep(5); // Same as  Thread.sleep(5000);

完整的源代码

import java.util.concurrent.TimeUnit;public class Main {public static void main(String[] args) {try {System.out.println("sleep for 5  seconds.");TimeUnit.SECONDS.sleep(5); // Same as  Thread.sleep(5000);// The "main" thread will sleepSystem.out.println("woke up.");} catch (InterruptedException e) {System.out.println("interrupted.");}System.out.println("done.");}
}

上面的代码生成以下结果。


 


http://www.mrgr.cn/news/67439.html

相关文章:

  • 【MFC编程(一)】MFC概述
  • NewStar CTF 2024 misc WP
  • 什么是Dart,有什么特点
  • 如何设置内网IP的端口映射到公网
  • 【JavaScript】V8,Nodejs 与浏览器
  • 总结拓展十五:SAP物料分割评估
  • 网站模版企业如何选择免费网站模板
  • Java 异常处理的最佳实践
  • 探索淘宝API:如何高效获取商品类目信息
  • Stream操作
  • [C++ 核心编程]笔记 4.4.2 类做友元
  • 030集——分组法——C# CAD二次开发
  • 云服务器上的网站取消301重定向功能
  • qt QCompleter详解
  • 【CAN总线协议】CAN和CANFD的区别、CAN FD帧结构解析
  • 制造业仓储信息化总体规划方案
  • 康坦电商发布2024年度战略:立足中国,开拓全球市场
  • Redux的简介及其在React中的应用
  • 想要搭建陪玩系统小程序,这几点不容忽视,陪玩系统源码框架
  • 在Java中抽象类和接口的区别是什么?
  • PySpark本地开发环境搭建
  • 华为机试HJ27 查找兄弟单词
  • 用接地气的例子趣谈 WWDC 24 全新的 Swift Testing 入门(三)
  • FQDN(Fully Qualified Domain Name,完全限定域名)是指能够唯一标识互联网上一台主机的域名
  • (61)使用LMS算法估计线性预测器并计算估计误差的MATLAB仿真
  • .NET 白名单文件通过反序列化执行系统命令