Thread 객체의 run() 메소드 를 직접 호출하면 별도의 스레드가 시작되지 않으며 현재 스레드 내에서 실행될 수 있습니다. 별도의 스레드에서 Runnable.run을 실행하려면 다음 중 하나를 수행합니다.
public class ThreadRunMethodTest { public static void main(String args[]) { MyThread runnable = new MyThread(); runnable.run(); // Call to run() method does not start a separate thread System.out.println("Main Thread"); } } class MyThread extends Thread { public void run() { try { Thread.sleep(1000); } catch (InterruptedException e) { System.out.println("Child Thread interrupted."); } System.out.println("Child Thread"); } }
위의 예에서 메인 스레드 ThreadRunMethodTest는 run() 메서드를 사용하여 하위 스레드 MyThread를 호출합니다. 이로 인해 나머지 메인 스레드가 실행되기 전에 하위 스레드가 완료되어 "Child Thread"가 "Main Thread"보다 먼저 인쇄됩니다.
Child Thread Main Thread
위 내용은 Java에서 run() 메서드를 직접 호출하면 어떻게 되나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!