Java中有多种方法可以暂停线程。下面我将介绍两种常用的方法。
1. 使用Thread类的sleep方法:
通过调用Thread类的sleep方法,可以让当前线程暂停执行一段时间。sleep方法接受一个以毫秒为单位的参数,表示线程暂停的时间长度。在指定的时间过去后,线程会自动恢复执行。
示例代码如下:
`
try {
Thread.sleep(1000); // 暂停1秒
} catch (InterruptedException e) {
e.printStackTrace();
}
`
上述代码会让当前线程暂停1秒钟。
需要注意的是,sleep方法可能会抛出InterruptedException异常,所以需要在try-catch块中进行异常处理。
2. 使用Object类的wait和notify方法:
wait和notify方法是Object类的两个重要方法,用于实现线程之间的协作。wait方法会使当前线程进入等待状态,直到其他线程调用相同对象的notify方法来唤醒它。
示例代码如下:
`
synchronized (obj) {
try {
obj.wait(); // 当前线程进入等待状态
} catch (InterruptedException e) {
e.printStackTrace();
}
}
`
上述代码会使当前线程进入等待状态,直到其他线程调用obj对象的notify方法。
需要注意的是,wait方法和notify方法必须在同步块或同步方法中调用,并且针对同一个对象进行操作。
这里介绍了两种常用的暂停线程的方法,根据具体的需求可以选择合适的方法来实现线程的暂停。