阅读量:0
Java中暂停线程的方法有以下几种:
- 使用Thread类的sleep()方法:可以使当前线程暂停指定的时间(以毫秒为单位),然后再恢复执行。
try { Thread.sleep(1000); // 暂停当前线程1秒钟 } catch (InterruptedException e) { e.printStackTrace(); }
- 使用Object类的wait()方法:可以暂停当前线程,并释放对象的锁,直到其他线程调用该对象的notify()或notifyAll()方法来唤醒该线程。
synchronized (object) { try { object.wait(); // 暂停当前线程,等待其他线程唤醒 } catch (InterruptedException e) { e.printStackTrace(); } }
- 使用Thread类的join()方法:可以等待某个线程结束后再继续执行当前线程。
Thread t = new Thread(new Runnable() { @Override public void run() { // 子线程执行的任务 } }); t.start(); // 启动子线程 try { t.join(); // 等待子线程终止后再继续执行主线程 } catch (InterruptedException e) { e.printStackTrace(); }
需要注意的是,以上方法都是暂停当前线程,而不是暂停其他线程。如果需要暂停其他线程,可以使用共享变量或者锁来实现线程间的通信,从而使其他线程暂停执行。