Java는 Thread 클래스의 sleep() 함수를 사용하여 스레드의 실행을 일시 중지합니다.
Java에서 스레드는 동시 실행의 기본 단위입니다. 스레드 정지 및 제어를 달성하기 위해 Java는 Thread 클래스의 sleep() 메소드를 제공합니다. sleep() 메서드를 사용하면 스레드가 실행을 계속하기 전에 일정 시간 동안 일시 중지할 수 있습니다. 이 기사에서는 코드 예제와 함께 sleep() 메서드를 사용하여 스레드 실행을 일시 중지하는 방법을 소개합니다.
Thread 클래스의 sleep() 메서드는 Thread 클래스를 통해 직접 호출할 수 있는 정적 메서드입니다. 이 메소드의 프로토타입은 다음과 같습니다:
public static void sleep(long millis)
throws InterruptedException
여기서, millis 매개변수는 일시 중지할 밀리초 수를 나타냅니다. sleep() 메서드가 호출되면 현재 스레드는 실행을 일시 중단하고 차단 상태로 들어간 다음 자동으로 깨어나 지정된 밀리초 후에 실행을 계속합니다. sleep() 메소드는 InterruptedException을 발생시키므로 이 메소드를 사용할 때 예외 처리가 필요하다는 점에 유의해야 합니다.
다음은 sleep() 메서드를 사용하여 스레드 실행을 일시 중지하는 방법을 보여주는 간단한 예입니다.
public class SleepExample { public static void main(String[] args) { // 创建一个新线程 Thread thread = new Thread(new MyRunnable()); // 启动线程 thread.start(); try { // 主线程暂停500毫秒 Thread.sleep(500); // 中断线程 thread.interrupt(); } catch (InterruptedException e) { e.printStackTrace(); } } static class MyRunnable implements Runnable { @Override public void run() { try { // 线程执行任务 System.out.println("线程开始执行任务"); // 线程暂停1秒 Thread.sleep(1000); // 继续执行任务 System.out.println("线程继续执行任务"); } catch (InterruptedException e) { // 线程被中断,抛出异常 System.out.println("线程被中断,任务终止"); return; } // 线程执行完成 System.out.println("线程任务执行完成"); } } }
위 예에서는 먼저 새 스레드가 생성되고 시작됩니다. 그런 다음 기본 스레드는 sleep() 메서드를 호출하여 500밀리초 동안 실행을 일시 중지한 다음 새 스레드를 중단합니다. 새 스레드의 run() 메서드에서 스레드는 먼저 "스레드가 작업 실행을 시작합니다"를 출력한 다음 sleep() 메서드를 호출하여 1초 동안 실행을 일시 중지하고 마지막으로 "스레드가 작업을 계속 실행합니다"를 출력합니다. 새 스레드가 sleep() 메서드를 호출하기 전에 기본 스레드가 새 스레드를 중단하면 새 스레드는 InterruptedException을 발생시키고 "스레드가 중단되어 작업이 종료되었습니다"를 출력합니다.
Thread 클래스의 sleep() 메서드를 사용하면 스레드의 일시 중지 및 재개를 정밀하게 제어하여 멀티 스레드 프로그래밍에서 스레드 간 조정 및 동기화를 달성할 수 있습니다.
위 내용은 Java는 Thread 클래스의 sleep() 함수를 사용하여 스레드 실행을 일시 중지합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!