java sleep
时间: 2023-10-29 13:55:52 浏览: 101
在Java中,sleep()是Thread类的一个静态方法,用于使当前线程暂停执行一段时间。它的语法为:Thread.sleep(long millis),其中millis是暂停时间的毫秒数。调用sleep()方法会使当前线程暂停执行,让出CPU给其他线程执行。暂停时间过后,当前线程会重新进入就绪状态,等待CPU调度执行。
以下是一个使用sleep()方法的示例:
```java
public class SleepExample {
public static void main(String[] args) {
System.out.println("程序开始执行");
try {
// 暂停5秒
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("程序执行完毕");
}
}
```
在上面的示例中,程序会先输出"程序开始执行",然后暂停5秒钟,最后输出"程序执行完毕"。在暂停期间,当前线程会被暂停执行,让出CPU给其他线程。
相关问题
Java sleep
Java中的sleep()方法可以使当前线程暂停执行一段时间,具体来说,它会使线程从运行状态转换为阻塞状态,直到指定的时间到期后再转换为可运行状态。sleep()方法有两个重载版本,分别是:
```java
public static void sleep(long millis) throws InterruptedException
public static void sleep(long millis, int nanos) throws InterruptedException
```
第一个版本接受一个以毫秒为单位的时间参数,第二个版本接受一个以毫秒和纳秒为单位的时间参数。需要注意的是,sleep()方法可能会抛出InterruptedException异常,因此需要进行异常处理。
以下是一个Java sleep()方法的示例:
```java
public class SleepDemo {
public static void main(String[] args) {
System.out.println("Start");
try {
Thread.sleep(2000); // 线程暂停2秒
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("End");
}
}
```
输出:
```
Start
End
```
在上面的示例中,程序首先输出"Start",然后调用sleep()方法使线程暂停2秒,最后输出"End"。需要注意的是,sleep()方法的实际暂停时间可能会比指定的时间长,因为线程的调度也需要一定的时间。
java sleep用法
以下是Java中sleep()方法的用法和示例:
sleep()方法是Thread类的一个静态方法,用于使当前线程暂停执行一段时间。它有两个重载方法:
1. public static void sleep(long millis) throws InterruptedException
使当前线程睡眠millis毫秒。
2. public static void sleep(long millis, int nanos) throws InterruptedException
使当前线程睡眠millis毫秒加nanos纳秒。
示例代码如下:
1. 使当前线程睡眠1秒钟
```java
public class MySleepStudy {
public static void main(String[] args) {
long start = System.currentTimeMillis();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
long end = System.currentTimeMillis();
System.out.println(end - start + "毫秒过去了");
}
}
```
2. 使当前线程睡眠1秒钟零100000纳秒
```java
public class MySleepStudy {
public static void main(String[] args) {
long start = System.currentTimeMillis();
try {
Thread.sleep(1000, 100*1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
long end = System.currentTimeMillis();
System.out.println(end - start + "毫秒过去了");
}
}
```
阅读全文